pysvn-1.9.22/000755 000765 000024 00000000000 14527655016 013261 5ustar00barrystaff000000 000000 pysvn-1.9.22/INSTALL.html000644 000765 000024 00000006440 14056676554 015270 0ustar00barrystaff000000 000000 Building pysvn Extension

Building pysvn Extension

Prerequisites

To build pysvn you will require:

Some distributions will split python and subversion into more the one package.

You will need to find all the packages that give you the options listed above.

Building on win32

PYSVN sources have been updated to build on Windows 7 64bit version. Expect issues on older windows and 32but windows.

These instructions assume you have Microsoft Visual C++ to compile the code and INNO 5 to create the installation kit.

  1. Build subversion
  2. Fetch and expand the pysvn source code into extdir
  3. Expand pycxx-7.1.4.tar.gz into extdir\Import if not using a source kit
  4. Edit Builder\builder_custom_init.cmd to match the locations of the sources.
  5. cd Builder
  6. builder_custom_init.cmd
  7. cd ..\Source
  8. python setup.py configure ... (add any configure options required to make it find the required libraries).
  9. nmake
  10. cd ..\Test
  11. nmake
  12. cd ..\Kit\Windows
  13. nmake

To install the built kit

  1. Uninstall any previous kit (control panel's Add/Remove programs)
  2. nmake -f win32.mak install

Building on unix and Mac OS X systems.

  1. Install subversion.
    When installing from packages you will need to install the devel packages as well. For example on Fedora/Redhat subversion-devel, apr-devel, apr-util-devel and their dependancies.
  2. Get the pysvn source code
  3. For Python 2 or Python 3 builds: tar xzf pycxx-7.1.4.tar.gz into extdir/Import if not using a source kit
  4. cd Source
  5. Create the Makefile using python setup.py configure
  6. make
  7. cd Tests
  8. Test pysvn by running make

Install pysvn by copying the following from Extension/Source to python site-specific directory.

pysvn-1.9.22/Patches/000755 000765 000024 00000000000 14527655012 014644 5ustar00barrystaff000000 000000 pysvn-1.9.22/Source/000755 000765 000024 00000000000 14527655013 014516 5ustar00barrystaff000000 000000 pysvn-1.9.22/Tests/000755 000765 000024 00000000000 14527655016 014363 5ustar00barrystaff000000 000000 pysvn-1.9.22/Kit/000755 000765 000024 00000000000 14527655012 014004 5ustar00barrystaff000000 000000 pysvn-1.9.22/MANIFEST.in000644 000765 000024 00000001057 12605756242 015020 0ustar00barrystaff000000 000000 recursive-include Builder * recursive-include Docs * recursive-include Examples * recursive-include Import * recursive-include Kit * recursive-include Patches * recursive-include Source * recursive-include Tests * include INSTALL.html include LICENSE.txt exclude Source/pysvn/__init__.py exclude Source/pysvn/*.so exclude Source/*.o exclude Source/Makefile exclude Source/pysvn_docs.cpp exclude Source/pysvn_docs.hpp exclude Source/pysvn_version.hpp exclude Source/generate_svn_error_codes.hpp exclude Source/generate_svn_error_codes/generate_svn_error_codes pysvn-1.9.22/Docs/000755 000765 000024 00000000000 14527655012 014145 5ustar00barrystaff000000 000000 pysvn-1.9.22/setup.py000644 000765 000024 00000010136 14324737627 015000 0ustar00barrystaff000000 000000 # # ==================================================================== # (c) 2005-2009 Barry A Scott. All rights reserved. # # This software is licensed as described in the file LICENSE.txt, # which you should have received as part of this distribution. # # ==================================================================== # # # setup.py # # Handles creation of Python eggs, wheels, and source distributions. # # To build a source distribution, run: # # $ python setup.py sdist # # To build an egg, run: # # $ python setup.py bdist_egg # # To build a wheel, make sure you have the wheel package # (`pip install wheel`). This is available on newer systems by defaul. # Then run: # # $ python setup.py bdist_wheel # # These can all be built and uploaded to PyPI in one command: # # $ python setup.py sdist bdist_egg bdist_wheel upload # # Subsequent native eggs and wheels can be uploaded to PyPI with: # # $ python setup.py bdist_egg bdist_wheel upload # import setuptools import sysconfig import platform import shutil import sys import os import os.path from setuptools.command.build_ext import build_ext pysvn_version_info = {} f = open( 'Builder/version.info', 'r' ) for line in f: key, value = line.strip().split('=') pysvn_version_info[ key ] = value name = "pysvn" _pysvn_soname = '_pysvn_%d_%d' % sys.version_info[:2] class BuildExtensions(build_ext): """Builds the packages using the PySVN Makefile build system. This overrides the Python builder's build_ext command, invoking the Makefile build system to compile the deliverable pysvn/ directory. It then installs the deliverables to the right place so that they can be included in the package. By going through the build_ext route, the Python packaging infrastructure will generate compiled eggs/wheels that only install on systems compatible with the compiled pysvn.so. pip/easy_install will locate and install a compatible build, falling back on automatically compiling the source distribution. """ def build_extension( self, ext ): if ext.name == _pysvn_soname: self._build_pysvn( ext ) else: super( BuildExtensions, self ).build_extension( ext ) def _build_pysvn( self, ext ): dest_dir = os.path.join( os.path.abspath( self.build_lib ), 'pysvn' ) # Generate metadata first self.run_command( "egg_info" ) if platform.system() == 'Darwin': # For Mac, figure out the major.minor version of the OS, and # pass that information to the build system. os.putenv( 'MACOSX_DEPLOYMENT_TARGET', '.'.join( platform.mac_ver()[ 0 ].split( '.' )[ :2 ] ) ) # Invoke the build system. This will generate the __init__.py and # .so that we'll package. os.chdir( 'Source' ) os.system( sys.executable + ' setup.py configure' ) os.system( 'make clean' ) os.system( 'make' ) # Copy the built files to the destination pysvn/ directory. self.mkpath( dest_dir ) shutil.copy( os.path.join( 'pysvn', '__init__.py' ), dest_dir ) shutil.copy( os.path.join( 'pysvn', '%s.so' % _pysvn_soname ), dest_dir ) # We're done. Restore the working directory. os.chdir( '..' ) setuptools.setup( name = name, version='%(MAJOR)s.%(MINOR)s.%(PATCH)s' % pysvn_version_info, author="Barry Scott", author_email="barry@barrys-emacs.org", description="Subversion support for Python", long_description="", url="https://pysvn.sourceforge.io", license="Apache Software License", keywords="subversion", include_package_data=True, zip_safe=False, cmdclass={ 'build_ext': BuildExtensions, }, ext_modules = [ setuptools.Extension( _pysvn_soname, []) # This used to tell setuptools that # there is native extension, but # they're not build using setuptools. ], classifiers=[ "Topic :: Software Development :: Version Control", ], ) pysvn-1.9.22/Examples/000755 000765 000024 00000000000 14527655011 015032 5ustar00barrystaff000000 000000 pysvn-1.9.22/setup.cfg000644 000765 000024 00000000014 11411352312 015053 0ustar00barrystaff000000 000000 [egg_info] pysvn-1.9.22/LICENSE.txt000644 000765 000024 00000004315 11724430522 015074 0ustar00barrystaff000000 000000 ================================================================= Copyright (C) 2003-2012 Barry A. Scott. All rights reserved. ================================================================= The Apache Software License, Version 1.1 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The end-user documentation included with the redistribution, if any, must include the following acknowledgment: "This product includes software developed by Barry A. Scott http://www.barrys-emacs.org." Alternately, this acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear. 4. The names "PySVN" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact barry@barrys-emacs.org. 5. Products derived from this software may not be called "PySVN", nor may "PySVN" appear in their name, without prior written permission of Barry Scott. THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ================================================================= pysvn-1.9.22/Import/000755 000765 000024 00000000000 14527655017 014534 5ustar00barrystaff000000 000000 pysvn-1.9.22/Builder/000755 000765 000024 00000000000 14527655016 014647 5ustar00barrystaff000000 000000 pysvn-1.9.22/Builder/brand_version.py000755 000765 000024 00000006720 14072544500 020052 0ustar00barrystaff000000 000000 import sys import os import re SVN_REVISION_FILE = '../Builder/svn-revision.txt' class BrandingError(Exception): pass class BrandVersion: def __init__( self ): # create dictionary of branding strings self.branding_info = {} self.version_details = None self.input_filename = None self.output_filename = None def main( self, argv ): try: self.version_details = argv[1] self.input_filename = argv[2] self.output_filename = self.input_filename[:-len('.template')] self.loadVersionDetails() self.setBuildFromRevision() self.brandFile() return 0 except BrandingError as e: print( 'Error: %s' % (e,) ) return 1 def brandFile( self ): # read all the input text with open( self.input_filename, 'r' ) as f: text = f.read() # and write of a branded version with open( self.output_filename, 'w' ) as f: f.write( text % self.branding_info ) def loadVersionDetails( self ): with open( self.version_details ) as f: for line in f: line = line.strip() if len(line) == 0: continue if line[0:1] == ['#']: continue key, value = [s.strip() for s in line.split('=',1)] self.branding_info[ key ] = value def setBuildFromRevision( self ): if os.path.exists( SVN_REVISION_FILE ): with open( SVN_REVISION_FILE ) as f: build_revision = f.read().strip() if build_revision[0] not in '0123456789': raise BrandingError( 'Error: bad revision %r from %s' % (build_revision, SVN_REVISION_FILE) ) else: build_revision = self.getBuildFromRevisionUsingSvnversion() # build_revision is either a range nnn:mmm or mmm # we only want the mmm build_revision = build_revision.split(':')[-1] print( 'Info: revision %s' % (build_revision,) ) if build_revision[0] not in '0123456789': self.branding_info['BUILD'] = '0' return revision, modifiers = re.compile( r'(\d+)(.*)' ).search( build_revision ).groups() if modifiers: self.branding_info['BUILD'] = '0' else: self.branding_info['BUILD'] = revision def getBuildFromRevisionUsingSvnversion( self ): svnversion_image = os.environ.get( 'WC_SVNVERSION', '/usr/bin/svnversion' ) if not os.path.exists( svnversion_image ): raise BrandingError( 'Error: svnversion image not found at %r' % (svnversion_image,) ) # os.popen fails to run a quoted image that does not have a space in it path if ' ' in svnversion_image: cmd = ('"%s" -c "%s" 2>&1' % (svnversion_image ,os.environ.get( 'PYSVN_EXPORTED_FROM', '..' ))) else: cmd = ('%s -c "%s" 2>&1' % (svnversion_image ,os.environ.get( 'PYSVN_EXPORTED_FROM', '..' ))) print( 'Info: Running %s' % cmd ) build_revision = os.popen( cmd, 'r' ).read().strip() if build_revision[0] not in '0123456789': raise BrandingError( 'Error: svnversion %r bad output %r' % (svnversion_image, build_revision) ) return build_revision if __name__ == '__main__': sys.exit( BrandVersion().main( sys.argv ) ) pysvn-1.9.22/Builder/version.info000644 000765 000024 00000000041 14527422525 017201 0ustar00barrystaff000000 000000 MAJOR=1 MINOR=9 PATCH=22 BUILD=0 pysvn-1.9.22/Builder/win32-msvc90.mak000644 000765 000024 00000001242 12273441101 017401 0ustar00barrystaff000000 000000 BUILD_TYPE=Release SVN_VER_MAJ_MIN=1.7 VCBUILD_OPT=/useenv /nologo /nocolor "/info:Info: " "/error:Error: " "/warning:Warn: " build: all test kit all: cd ..\Source & $(PYTHON) setup.py configure --verbose --platform=win32 --svn-root-dir=$(TARGET)\svn-win32-%SVN_VER% --pycxx-dir=$(PYCXX) cd ..\Source & $(MAKE) test: cd ..\Tests & $(MAKE) clean: cd ..\Source & if exist makefile $(MAKE) clean cd ..\Source & if exist sept del sept cd ..\Tests & if exist makefile $(MAKE) clean cd ..\kit\Win32-$(SVN_VER_MAJ_MIN) & $(MAKE) clean kit: cd ..\kit\Win32-$(SVN_VER_MAJ_MIN) & $(MAKE) all_msvc90 install: ..\kit\Win32\tmp\output\setup.exe pysvn-1.9.22/Builder/linux.mak000644 000765 000024 00000001070 11655237433 016474 0ustar00barrystaff000000 000000 build: all test kit all: ../Source/Makefile cd ../Source && $(MAKE) clean: ../Source/Makefile cd ../Source && $(MAKE) clean && rm Makefile cd ../Tests && $(MAKE) clean && rm Makefile rm -rf ../Kit/Linux/tmp ../Source/Makefile: ../Source/setup.py cd ../Source && $(PYTHON) setup.py configure --platform=linux $(CONFIG_ARGS) kit: cd ../Kit/Linux && $(PYTHON) make_rpm.py install: echo sudo may prompt for your password to allow installation of the pysvn rpm sudo rpm -i ../Kit/Linux/tmp/RPMS/i386/py*_pysvn-*-1.i386.rpm test: cd ../Tests && $(MAKE) all pysvn-1.9.22/Builder/builder_custom_init.cmd000644 000765 000024 00000000013 12701252063 021354 0ustar00barrystaff000000 000000 rem empty pysvn-1.9.22/Builder/builder_custom_init.sh000755 000765 000024 00000001242 14477277705 021261 0ustar00barrystaff000000 000000 #!/bin/echo Usage: . $0 # default to highest version we can find if no value in $1 and $2 if [ ! -z "$1" ] then PREF_VER=$1.$2 else PREF_VER=3.10 fi export PYCXX_VER=7.1.9 for PY_VER in ${PREF_VER} 3.10 3.9 do # used in pick python to use in Builder driver makefile export PYTHON=$( which python${PY_VER} ) if [ -e "${PYTHON}" ] then break fi done unset PREF_VER if [ -e "${PYTHON}" ] then # prove the python version selected is as expected ${PYTHON} -c "import sys;print( 'Info: Python Version %r' % sys.version )" else echo "Error: Cannot find python${PREF_VER} on the PATH" fi export WC_SVNVERSION=$(which svnversion) pysvn-1.9.22/Builder/win32-msvc71.mak000644 000765 000024 00000003717 11264374000 017413 0ustar00barrystaff000000 000000 BUILD_TYPE=Release SVN_VER_MAJ_MIN=1.5 build: all test kit all: all-$(SVN_VER_MAJ_MIN) all-1.4: cd ..\Source & devenv pysvn-for-svn-1-4-msvc71.sln /useenv /build "$(BUILD_TYPE)" /project "pysvn" all-1.5: cd ..\Source & devenv pysvn-for-svn-1-5-msvc71.sln /useenv /build "$(BUILD_TYPE)" /project "pysvn" all-1.6: cd ..\Source & devenv pysvn-for-svn-1-6-msvc71.sln /useenv /build "$(BUILD_TYPE)" /project "pysvn" clean: clean-$(SVN_VER_MAJ_MIN) clean-1.4: cd ..\Source & devenv pysvn-for-svn-1-4-msvc71.sln /useenv /clean "$(BUILD_TYPE)" /project "pysvn" cd ..\Source & del sept cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.4 clean cd ..\kit\Win32-1.4 & $(MAKE) clean clean-1.5: cd ..\Source & devenv pysvn-for-svn-1-5-msvc71.sln /useenv /clean "$(BUILD_TYPE)" /project "pysvn" cd ..\Source & del sept cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.5 clean cd ..\kit\Win32-1.5 & $(MAKE) clean clean-1.6: cd ..\Source & devenv pysvn-for-svn-1-6-msvc71.sln /useenv /clean "$(BUILD_TYPE)" /project "pysvn" cd ..\Source & del sept cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.6 clean cd ..\kit\Win32-1.6 & $(MAKE) clean kit: kit-$(SVN_VER_MAJ_MIN) kit-1.4: cd ..\kit\Win32-1.4 & $(MAKE) all_msvc71 kit-1.5: cd ..\kit\Win32-1.5 & $(MAKE) all_msvc71 kit-1.6: cd ..\kit\Win32-1.6 & $(MAKE) all_msvc71 install: install-$(SVN_VER_MAJ_MIN) install-1.4: ..\kit\Win32\tmp\output\setup.exe install-1.5: ..\kit\Win32\tmp\output\setup.exe install-1.6: ..\kit\Win32\tmp\output\setup.exe test: test-$(SVN_VER_MAJ_MIN) test-1.4: cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.4 KNOWN_GOOD_VERSION=py$(PY_MAJ)-svn$(SVN_VER_MAJ_MIN) test-1.5: cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.5 KNOWN_GOOD_VERSION=py$(PY_MAJ)-svn$(SVN_VER_MAJ_MIN) test-1.6: cd ..\Tests & $(MAKE) -f win32.mak SVN_VER_MAJ_MIN=1.6 KNOWN_GOOD_VERSION=py$(PY_MAJ)-svn$(SVN_VER_MAJ_MIN) pysvn-1.9.22/Builder/svn-revision.txt000644 000765 000024 00000000005 14527655017 020046 0ustar00barrystaff000000 000000 2125 pysvn-1.9.22/Builder/freebsd.mak000644 000765 000024 00000000551 10411462216 016736 0ustar00barrystaff000000 000000 build: all test kit all: ../Source/Makefile cd ../Source && $(MAKE) clean: ../Source/Makefile cd ../Source && $(MAKE) clean && rm Makefile cd ../Tests && $(MAKE) clean && rm Makefile ../Source/Makefile: ../Source/setup.py cd ../Source && $(PYTHON) setup.py configure kit: cd ../Kit/FreeBSD && $(PYTHON) make_pkg.py test: cd ../Tests && $(MAKE) all pysvn-1.9.22/Builder/make-devel-rpm-build.sh000755 000765 000024 00000001145 12764754136 021116 0ustar00barrystaff000000 000000 #!/bin/bash -x # # make-devel-rpm-build.sh # # Create a source kit and copy it and the rpm spec file to ~/rpmbuild locations # . ./version.info V=${MAJOR}.${MINOR}.${PATCH} rm -rf /tmp/pysvn-${V} svn export --quiet .. /tmp/pysvn-${V} BUILD=$( svnversion .. ) cat </tmp/pysvn-${V}/Builder/version.info MAJOR=${MAJOR} MINOR=${MINOR} PATCH=${PATCH} BUILD=${BUILD} EOF echo Info: Creating source kit... mkdir -p /tmp/rpmbuild/SOURCES mkdir -p /tmp/rpmbuild/SPECS tar czf /tmp/rpmbuild/SOURCES/pysvn-${V}.tar.gz -C /tmp pysvn-${V} echo Info: Running rpmbuild cd /tmp/rpmbuild/SPECS rpmbuild -ba pysvn.spec pysvn-1.9.22/Builder/macosx.mak000644 000765 000024 00000000556 11062516532 016627 0ustar00barrystaff000000 000000 build: all test kit all: ../Source/Makefile cd ../Source && $(MAKE) clean: ../Source/Makefile cd ../Source && $(MAKE) clean && rm Makefile cd ../Tests && $(MAKE) clean ../Source/Makefile: ../Source/setup.py cd ../Source && $(PYTHON) -u setup.py configure $(CONFIG_ARGS) kit: cd ../Kit/MacOSX && $(PYTHON) -u make_pkg.py test: cd ../Tests && $(MAKE) all pysvn-1.9.22/Import/pycxx-7.1.9/000755 000765 000024 00000000000 14477104307 016354 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Demo/000755 000765 000024 00000000000 14477104307 017240 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/obj/000755 000765 000024 00000000000 14477104307 017126 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/build-all.py000755 000765 000024 00000007415 14443557171 020611 0ustar00barrystaff000000 000000 #!/usr/bin/python3 import sys import os import subprocess first_limited_api_minor = 4 # (major, minor, bits, vc_ver) default_versions_to_test = [ (2, 7, 32, '9.0'), (2, 7, 64, '9.0'), (3, 3, 32, '10.0'), # no compiler for windows 64 bit (3, 4, 32, '10.0'), # no compiler for windows 64 bit (3, 5, 32, '14.0'), (3, 5, 64, '14.0'), (3, 6, 32, '2017'), (3, 6, 64, '2017'), (3, 7, 32, '2017'), (3, 7, 64, '2017'), (3, 8, 32, '2017'), (3, 8, 64, '2017'), (3, 9, 32, '2019'), (3, 9, 64, '2019'), (3, 10, 32, '2019'), (3, 10, 64, '2019'), (3, 11, 32, '14.0'), (3, 11, 64, '14.0'), (3, 12, 32, '14.0'), (3, 12, 64, '14.0'), ] def main( argv ): dry_run = False all_versions_to_test = [] setup_makefile_options = [] for arg in argv[1:]: if arg == '--dry-run': dry_run = True elif arg.startswith( '--' ): # assume its for setup_makefile setup_makefile_options.append( arg ) else: # convert all the args into a list of versions to test # assume py.exe format maj.min or maj.min-bits try: if '-' in arg: major_minor, bits = arg.split('-') else: major_minor = arg bits = '64' major, minor = major_minor.split('.') major = int(major) minor = int(minor) bits = int(bits) except ValueError: print( 'Error: Expecting .[-] 3.9-64 given %r' % (arg,) ) return 1 # find the vc_ver from the default_versions_to_test vc_ver = None for info in default_versions_to_test: if info[:3] == (major, minor, bits): vc_ver = info[3] if vc_ver is None: print( 'Error: Update default_versions_to_test for %d.%d-%d - vc_ver cannot be determined' % (major, minor, bits) ) return 1 all_versions_to_test.append( (major, minor, bits, vc_ver) ) if len(all_versions_to_test) == 0: all_versions_to_test = default_versions_to_test # # Run all the requested builds # is_win = sys.platform.startswith( 'win' ) tag = [] if os.environ.get('TAG'): tag = [os.environ.get('TAG')] for major, minor, bits, vc_ver in all_versions_to_test: if is_win: fmt = '.\\%s.cmd' else: # Only windows needs to build both 32 and 64 bit # for the mac and linux only build once if bits == 32: continue fmt = './%s.sh' if is_win: cmd = [fmt % ('build-unlimited-api',), '%d.%d' % (major, minor), 'win%d' % (bits,), vc_ver] + setup_makefile_options else: cmd = [fmt % ('build-unlimited-api',), 'python%d.%d' % (major, minor)] + setup_makefile_options print( 'Info: %s' % (' '.join(cmd),), flush=True ) if not dry_run: subprocess.run( cmd ) if major == 2: continue for api_minor in range( first_limited_api_minor, minor+1 ): if is_win: cmd = [fmt % ('build-limited-api',), '%d.%d' % (major, minor), 'win%d' % (bits,), vc_ver] else: cmd = [fmt % ('build-limited-api',), 'python%d.%d' % (major, minor)] # add the API version to use cmd.append( '%d.%d' % (major, api_minor) ) cmd.extend( setup_makefile_options ) print( 'Info: %s' % (' '.join(cmd),), flush=True ) if not dry_run: subprocess.run( cmd ) return 0 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Import/pycxx-7.1.9/tag_pycxx.py000644 000765 000024 00000005530 14202154313 020723 0ustar00barrystaff000000 000000 import pysvn import sys import os def check_version( version ): vars = {} with open('CXX/Version.hxx') as f: for line in f: words = line.split() if( len(words) >= 3 and words[0] == '#define' and words[1].startswith('PYCXX_VERSION_') ): vars[ words[1] ] = words[2] defined_version = '%(PYCXX_VERSION_MAJOR)s.%(PYCXX_VERSION_MINOR)s.%(PYCXX_VERSION_PATCH)s' % vars print( 'Info: %s defined in Version.hxx' % (defined_version,) ) if defined_version == version: return True print( 'Error: %s does not match defined version' % (version,) ) return False def make_tag( from_url, tag_base_url, version ): client = pysvn.Client() client.callback_get_log_message = lambda : (True, 'Tag version '+version) client.callback_get_login = callback_getLogin try: from_files = client.ls( from_url, recurse=False ) print( 'Info: Found', from_url ) except pysvn.ClientError as e: print( 'Error: From does not exist',from_url ) return try: tag_files = client.ls( tag_base_url, recurse=False ) print( 'Info: Found', tag_base_url ) except pysvn.ClientError as e: print( 'Error: Tag base does not exist', tag_base_url ) return cur_versions = [os.path.basename(f['name']) for f in tag_files] if version in cur_versions: print( 'Error: Already tagged', version ) return try: to_url = tag_base_url + '/' + version print( 'Info: Copy', repr(from_url), repr(to_url) ) client.copy( from_url, to_url ) print( 'Info: Copy complete' ) except pysvn.ClientError as e: print( 'Error: ', str(e) ) return def callback_getLogin( realm, username, may_save ): print( 'May save:', may_save ) print( 'Realm:', realm ) if username: print( 'Username:', username ) else: print( 'Username: ', end='', flush=True ) username = sys.stdin.readline().strip() if len(username) == 0: return 0, '', '', False print( 'Password: ', end='', flush=True ) password = sys.stdin.readline().strip() save_password = 'x' while save_password.lower() not in ['y','ye','yes','n', 'no','']: print( 'Save password? [y/n] ', end='', flush=True ) save_password = sys.stdin.readline().strip() return 1, username, password, save_password in ['y','ye','yes'] def main( argv ): if len(argv) != 2: print( 'Usage: %s ' % (sys.argv[0],) ) return version = sys.argv[1] if not check_version( version ): return 1 from_url = 'https://svn.code.sf.net/p/cxx/code/trunk/CXX' tag_base_url = 'https://svn.code.sf.net/p/cxx/code/tags' make_tag( from_url, tag_base_url, version ) if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Import/pycxx-7.1.9/make_src_kit.py000644 000765 000024 00000002230 13403242271 021345 0ustar00barrystaff000000 000000 import sys import os import shutil def main( argv ): f = open( 'CXX/Version.hxx' ) major = None minor = None patch = None for line in f: words = line.split() if words[0:2] == ['#define', 'PYCXX_VERSION_MAJOR']: major = words[2] if words[0:2] == ['#define', 'PYCXX_VERSION_MINOR']: minor = words[2] if words[0:2] == ['#define', 'PYCXX_VERSION_PATCH']: patch = words[2] print( 'version: %s, %s, %s' % (major, minor, patch) ) tmp_dir = os.environ.get('TMPDIR','/tmp') kit_name = 'pycxx-%s.%s.%s' % (major, minor, patch) kit_dir = os.path.join( tmp_dir, kit_name ) if os.path.exists( kit_dir ): print( 'Info: Removing tree at %s' % kit_dir ) shutil.rmtree( kit_dir ) os.mkdir( kit_dir ) print( 'Info: svn export %s' % kit_dir ) os.system( 'svn export --force . %s' % kit_dir ) print( 'Info: Creating %s.tar.gz' % kit_dir ) os.chdir( tmp_dir ) cmd = 'tar czf %s.tar.gz --exclude=%s/SourceForge %s' % (kit_dir, kit_name, kit_name) os.system( cmd ) return 0 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Import/pycxx-7.1.9/build-unlimited-api.sh000755 000765 000024 00000001107 14300500451 022531 0ustar00barrystaff000000 000000 #!/bin/bash set -x set -e set -o pipefail PYTHON=${1? python exe} shift 1 case "$( uname )" in Darwin) OS=macosx ;; Linux): OS=linux ;; *) echo Unknown OS assuming Linux OS=linux ;; esac PYTHON_BASE=$(basename ${PYTHON}) TAG="${1}${2}${3}${4}" ${PYTHON} setup_makefile.py ${OS} tmp-${PYTHON_BASE}-unlimited-api${TAG}.mak "${@}" make -f tmp-${PYTHON_BASE}-unlimited-api${TAG}.mak clean 2>&1 | tee tmp-${PYTHON_BASE}-unlimited-api${TAG}.log make -f tmp-${PYTHON_BASE}-unlimited-api${TAG}.mak test 2>&1 | tee -a tmp-${PYTHON_BASE}-unlimited-api${TAG}.log pysvn-1.9.22/Import/pycxx-7.1.9/CXX/000755 000765 000024 00000000000 14477104307 017016 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/build-unlimited-api.cmd000644 000765 000024 00000004166 14305137454 022705 0ustar00barrystaff000000 000000 setlocal rem Mm e.g. 27 36 etc set PYTHON_VER=%1 rem win32 or win64 set PYTHON_ARCH=%2 rem 9.0, 14.0 set VC_VER=%3 echo ---------------------------------------------------- echo Testing unlimited API for python %1 %2 using VC %3 echo ---------------------------------------------------- if %PYTHON_ARCH% == win32 ( set PYTHON_VER_ARCH=%PYTHON_VER%-32 if %VC_VER% == 9.0 ( call "%LOCALAPPDATA%\Programs\Common\Microsoft\Visual C++ for Python\%VC_VER%\vcvarsall.bat" x86 ) else ( if exist "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\vcvarsall.bat" ( call "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\vcvarsall.bat" ) if exist "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" ( call "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" ) ) ) if %PYTHON_ARCH% == win64 ( set PYTHON_VER_ARCH=%PYTHON_VER%-64 if %VC_VER% == 9.0 ( call "%LOCALAPPDATA%\Programs\Common\Microsoft\Visual C++ for Python\%VC_VER%\vcvarsall.bat" x64 ) else ( if exist "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\bin\amd64\vcvars64.bat" ( call "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\bin\amd64\vcvars64.bat" ) if exist "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" ( call "c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" ) ) ) py -%PYTHON_VER_ARCH% setup_makefile.py %PYTHON_ARCH% tmp-%PYTHON_ARCH%-python%PYTHON_VER%-unlimited-build.mak if errorlevel 1 exit /b 1 nmake -f tmp-%PYTHON_ARCH%-python%PYTHON_VER%-unlimited-build.mak clean all 2>&1 | py -3 build_tee.py tmp-%PYTHON_ARCH%-python%PYTHON_VER%-unlimited-build.log if not exist obj\pycxx_iter.pyd exit /b 1 nmake -f tmp-%PYTHON_ARCH%-python%PYTHON_VER%-unlimited-build.mak test 2>&1 | py -3 build_tee.py -a tmp-%PYTHON_ARCH%-python%PYTHON_VER%-unlimited-test.log endlocal pysvn-1.9.22/Import/pycxx-7.1.9/build-all.cmd000644 000765 000024 00000000027 14305137454 020704 0ustar00barrystaff000000 000000 py -3 build-all.py %* pysvn-1.9.22/Import/pycxx-7.1.9/README.html000644 000765 000024 00000023135 14477045070 020204 0ustar00barrystaff000000 000000 PyCXX README

PyCXX -- README

Installation using distutils

Windows Installation and Demo

  1. Fetch http://prdownloads.sourceforge.net/cxx/pycxx-7.1.8.tar.gz
  2. Expand the archive into a directory of your choosing C:\ for example.
  3. Install the PyCXX files:
    1. C:> cd \pycxx-7.1.8
    2. C:\pycxx-7.1.8> python setup.py install
  4. Build and run the demo extensions:
    1. C:> cd \pycxx-7.1.8
    2. C:\pycxx-7.1.8> python setup_makefile.py win32 win32.mak 
    3. C:\pycxx-7.1.8> nmake -f win32.mak clean test

Unix Installation and Demo

  1. Fetch http://prdownloads.sourceforge.net/cxx/pycxx-7.1.8.tar.gz
  2. Login as root. root access is typically needed on Unix systems to install the PyCXX files into the Python directories.
  3. Expand the archive into a directory of your choosing ~\ for example.
  4. Install the PyCXX files:
    1. # cd ~/pycxx-7.1.8
    2. # python setup.py install
  5. Build and run the demo extensions:
    1. # cd ~/pycxx-7.1.8
    2. # python setup_makefile.py linux linux.mak
    3. # make -f linux.mak clean test

Revision History

Version: 7.1.9 (9-Sep-2023)

Add support for building against python 3.12 RC2.

The following functions have been remove from 3.12 builds:

  • int &_Py_DebugFlag()
  • int &_Py_InteractiveFlag()
  • int &_Py_OptimizeFlag()
  • int &_Py_NoSiteFlag()
  • int &_Py_VerboseFlag()

    They depend on deprecated variables:

    Py_DebugFlag, Py_InteractiveFlag, Py_OptimizeFlag, Py_NoSiteFlag, Py_VerboseFlag

    If the value of these variables is needed they can be accessed from sys.flags.

    _Py_PackageContext is no longer accessible.

    Version: 7.1.8 (18-Jun-2023)

    Add support for building against python 3.12 beta 1

    _Py_PackageContext is no longer accessible.

    Version: 7.1.7 (15-Feb-2022)

    This is Version 7.1.6 with README updates

    Version: 7.1.6 (14-Feb-2022)

    Add support for building against python 3.11 alpha 4.

    Version: 7.1.5 (21-Feb-2021)

    Replace use of deprecated PyUnicode APIs with the supported version.

    The class Py::String functions that used deprecated PyUnicode APIs that have no replacements are not available for python 3.9 and later:

        const Py_UNICODE *unicode_data() const;
        unicodestring as_unicodestring() const;
    

    Replace build-all.sh and build-all.cmd with build-all.py that can handle the build matrix.

    Add limited API builds for all possible combinations.

    Note: Python 3.9 has a bug that prevents use of the limited API until this bug is fix and shipped: BPO 43155 for details. The workaround is to set Py_LIMITED_API to use python 3.8.

    Version: 7.1.4 (31-May-2020)

    Add support for more number methods, like matrix and the inplace versions.

    Use IsInstance checking so that derived classes of builtin types can be used.

    Update Docs with recent changes.

    Add support for python 3.9 beta 1 changes.

    Version: 7.1.3 (8-Jul-2019)

    Fix for https://sourceforge.net/p/cxx/bugs/43/ memory leak caused by wrong ref count on python3 Py::String objects.

    Remove support for supportPrint() etc as the tp_print field is being removed from python either in 3.8 or 3.9.

    Version: 7.1.2 (4-Mar-2019)

    Fix problem with compiling for Python 2 and the _Py_PackageContext symbol.

    Merge Fedora's patch for setup.py

    Version: 7.1.1 (18-Feb-2019)

    Add exception errorType() and errorValue() function to access the type and value of an exception.

    Version: 7.1.0 (24-August-2018)

    Add support for Py_LIMITED_API aka PEP-384

    Version: 7.0.3 (23-April-2017)

    Update Py::Long to support long long consitently between Python2 and Python3.

    Version: 7.0.2 (16-April-2017)

    Add Py::Char ord() method to return the long value of a character.

    Fix String::size() that could return twice the actual length. This affected as_ucs4string() which would return a string with its second half as uninitialised memory.

    Fix setup.py for the Demo code to build all the required C++ code.

    Version: 7.0.1 (29-Aug-2016)

    Add extra methods to Py::String that as needed on Windows to support full unicode range of code points.

    On Windows Python defines Py_UNICODE as unsigned short, which is too small to hold all Unicode values. PyCXX has added to the Py::String API to support creationg from Py_UCS4 strings and converting Py::String() into Py::ucs4string objects.

    Fix validate for Bytes to use the correct check function.

    Version 7.0.0 (15-Aug-2016)

    Warning: This version fixes a number of problems that require source incompatible changes.

    However by defining PYCXX_6_2_COMPATIBILITY the V6.2.x API is restored. This is not recommended for new code.

    The first version of python3 that is supported is 3.3.

    A special thanks goes to Benjamin Webb, working at the US Army Engineer Research and Development Center, who has contributed to the design and testing of this release. 7.0.0 is better for his work.

    New source file needs to built: Src/cxx_exceptions.cxx. This file implements the new exception handling features.

    Fix the type used for lengths and sequence indexes to use Py_ssize_t. This will require sources changes for users of PyCXX.

    Implement smart handling of Exceptions between C++ and Python. You can now catch exceptions in C++ by type that are raised in C++ or Python.

    All builtin exceptions are support and are user defined exceptions.

    The base exception type is now BaseException not Exception. To upgrade source code replace all use of Exception with BaseException.

    The documentation has been updated to describe the new exception features.

    The supportSequence, supportMapping, supportNumber etc functions now take a bit mask that defines which specific callbacks are handled.

    Version 6.2.8 (10-May-2016)

    Fix crash when a member function is called via callMemberFunction() and that function raises an expection.

    Found in comment on StackOverFlow. Fix memory size allocated for new objects. It used the wrong size calculation, but was big enough to avoid problems.

    Version 6.2.7 (28-Apr-2016)

    Fix missing ptr__Unicode_Type.

    Fixes from learn0more@gmail.com make python2 also remember the m_module and add accessor functions.

    Fix for indirection issues from Vivian De Smedt.

    Update to work with latest Microsoft Visual C++ for python 2.7. All test run in Win32 and Win64.

    PyCXX.html documention has been updated, especially with 2TO3 information.

    Use delete[] for objects allocated with new[].

    Version 6.2.6 (04-Jan-2015)

    Fix build issue with GCC 4.2.1 on FreeBSD and Mac OS X (stop python defining isspace as a macro).

    Remove support for python 3.1 (API's are unstable).

    Add Python 3.3 support.

    Patch from Michael Droettboom to fix compilation issues.

    Patch from Michael Droettboom to add buffer interface for python3.

    Version 6.2.4 (3-Mar-2012)

    Fix memory leak in string encode and decode functions

    Fix indirect python loading on windows - Bool_type was missing

    Version 6.2.3 (11-Mar-2011)

    Version 6.2.2 (26-Dec-2010)

    Fix problem compiling against Python 3.1.3

    Version 6.2.1 (3-May-2010)

    Fix problems with new style classes

    Replace all example makefile and project files with setup_makefile.py script.

    Add APIs to make calling python functions easier. See TupleN(), callOnSelf(), self()

    Version 6.1.1 (26-Sep-2009)

    Supports Python 3 starting at Python 3.1 and Python 2

    Code clean up to fix compiler warnings reported by gcc 4.2.1 on Mac OS X when building for Python 3.

    Version 6.1.0 (19-Jul-2009)

    Support Python 3 and Python 2

    pysvn-1.9.22/Import/pycxx-7.1.9/build-limited-api.sh000755 000765 000024 00000001214 14300500451 022165 0ustar00barrystaff000000 000000 #!/bin/bash set -x set -e set -o pipefail PYTHON=${1? python exe} API=${2? api version} shift 2 case "$( uname )" in Darwin) OS=macosx ;; Linux): OS=linux ;; *) echo Unknown OS assuming Linux OS=linux ;; esac PYTHON_BASE=$(basename ${PYTHON}) TAG="${1}${2}${3}${4}" ${PYTHON} setup_makefile.py ${OS} tmp-${PYTHON_BASE}-limited-api-${API}${TAG}.mak --limited-api=${API} "${@}" make -f tmp-${PYTHON_BASE}-limited-api-${API}${TAG}.mak clean 2>&1 | tee tmp-${PYTHON_BASE}-limited-api-${API}${TAG}.log make -f tmp-${PYTHON_BASE}-limited-api-${API}${TAG}.mak test 2>&1 | tee -a tmp-${PYTHON_BASE}-limited-api-${API}${TAG}.log pysvn-1.9.22/Import/pycxx-7.1.9/build-all.sh000755 000765 000024 00000000047 14007527023 020552 0ustar00barrystaff000000 000000 #!/bin/bash set -e ./build-all.py "$@" pysvn-1.9.22/Import/pycxx-7.1.9/setup.py000755 000765 000024 00000004741 13437177573 020111 0ustar00barrystaff000000 000000 import os, sys from glob import glob from distutils.command.install import install from distutils.command.install_headers import install_headers from distutils.core import setup # either "Python2" or "Python3" python_ver = "Python" + sys.version[0] headers = [ (None, glob( os.path.join( "CXX", "*.hxx" ) ) + glob( os.path.join( "CXX", "*.h" ) )), (python_ver, glob( os.path.join( "CXX", python_ver, "*.hxx" ) )) ] sources = [ ("CXX", glob( os.path.join( "Src", "*.cxx" ) ) + glob( os.path.join( "Src", "*.c" ) )), (os.path.join( "CXX", python_ver ), glob( os.path.join( "Src", python_ver, "*" ) )) ] class my_install(install): def finalize_options( self ): if not self.install_data or (len(self.install_data) < 8): self.install_data = "$base/share/python$py_version_short" install.finalize_options (self) def run (self): self.distribution.data_files = sources self.distribution.headers = headers install.run( self ) class my_install_headers(install_headers): def run( self ): if not self.distribution.headers: return for subdir, headers in self.distribution.headers: try: dir = os.path.join( self.install_dir, subdir ) except: dir = self.install_dir self.mkpath( dir ) for header in headers: (out, _) = self.copy_file( header, dir ) self.outfiles.append( out ) # read the version from the master file CXX/Version.hxx v_maj = None v_min = None v_pat = None with open( 'CXX/Version.hxx', 'r' ) as f: for line in f: if line.startswith( '#define PYCXX_VERSION_' ): parts = line.strip().split() if parts[1] == 'PYCXX_VERSION_MAJOR': v_maj = parts[2] elif parts[1] == 'PYCXX_VERSION_MINOR': v_min = parts[2] elif parts[1] == 'PYCXX_VERSION_PATCH': v_pat = parts[2] setup( name = "CXX", version = "%s.%s.%s" % (v_maj, v_min, v_pat), maintainer = "Barry Scott", maintainer_email = "barry-scott@users.sourceforge.net", description = "Facility for extending Python with C++", url = "http://cxx.sourceforge.net", cmdclass = {'install': my_install, 'install_headers': my_install_headers}, packages = ['CXX'], package_dir = {'CXX': 'Lib'} ) pysvn-1.9.22/Import/pycxx-7.1.9/Lib/000755 000765 000024 00000000000 14477104307 017062 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/build-limited-api.cmd000644 000765 000024 00000003573 14305137454 022343 0ustar00barrystaff000000 000000 setlocal rem M.m e.g. 2.7 3.6 etc set PYTHON_VER=%1 rem 32 or 64 set PYTHON_ARCH=%2 rem 10.0, 14.0, 2017 set VC_VER=%3 rem 3.5 etc set API=%4 echo ------------------------------------------------------ echo Testing limited API %4 for python %1 %2 using VC %3 echo ------------------------------------------------------ if %PYTHON_ARCH% == win32 ( set PYTHON_VER_ARCH=%PYTHON_VER%-32 if exist "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\vcvarsall.bat" ( call "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\vcvarsall.bat" ) if exist "c:\Program Files (x86)\Microsoft Visual Studio\%VC_VER%\Community\VC\Auxiliary\Build\vcvars32.bat" ( call "c:\Program Files (x86)\Microsoft Visual Studio\%VC_VER%\Community\VC\Auxiliary\Build\vcvars32.bat" ) ) if %PYTHON_ARCH% == win64 ( set PYTHON_VER_ARCH=%PYTHON_VER%-64 if exist "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\bin\amd64\vcvars64.bat" ( call "C:\Program Files (x86)\Microsoft Visual Studio %VC_VER%\VC\bin\amd64\vcvars64.bat" ) if exist "c:\Program Files (x86)\Microsoft Visual Studio\%VC_VER%\Community\VC\Auxiliary\Build\vcvars64.bat" ( call "c:\Program Files (x86)\Microsoft Visual Studio\%VC_VER%\Community\VC\Auxiliary\Build\vcvars64.bat" ) ) py -%PYTHON_VER_ARCH% setup_makefile.py %PYTHON_ARCH% tmp-%PYTHON_ARCH%-python%PYTHON_VER%-limited-%API%-build.mak --limited-api=%API% if errorlevel 1 exit /b 1 nmake -f tmp-%PYTHON_ARCH%-python%PYTHON_VER%-limited-%API%-build.mak clean all 2>&1 | py -3 build_tee.py tmp-%PYTHON_ARCH%-python%PYTHON_VER%-limited-%API%-build.log if not exist obj\pycxx_iter.pyd exit /b 1 nmake -f tmp-%PYTHON_ARCH%-python%PYTHON_VER%-limited-%API%-build.mak test 2>&1 | py -3 build_tee.py -a tmp-%PYTHON_ARCH%-python%PYTHON_VER%-limited-%API%-test.log echo All done endlocal pysvn-1.9.22/Import/pycxx-7.1.9/how_to_release_pycxx.txt000644 000765 000024 00000001624 13510630011 023331 0ustar00barrystaff000000 000000 How to release PyCXX -------------------- 0. Update CXX/Version.hxx with the releases version number Update README.html, README.txt with change log info 1. Tag the source using tag_pycxx.py (depends on pysvn). 2. Create the source kit using make_src_kit.py 3. Add new File release on sourceforge. 1. http://sourceforge.net/projects/cxx/ 2. Select Files tab 3. Open CXX folder 4. Click "Add Folder" 5. Name the Folder PyCXX V.. e.g. PyCXX V6.1.1 7. Upload the source kit and its README.txt 9. Click on the source kit (i) icon and choose Select All platforms. Do not select all for README.txt. 4. Add news about release 1. Click News 2. From side bar choose New Post 3. Add news with release note info - may be need to make it a bigger advert? 5. Email CXX mailing lists 6. Update docs on the PyCXX homepage 1. cd SourceForge 2. ./deploy.sh pysvn-1.9.22/Import/pycxx-7.1.9/RegressionTests/000755 000765 000024 00000000000 14477104307 021517 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Doc/000755 000765 000024 00000000000 14477104307 017061 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/README.txt000644 000765 000024 00000001016 14477044572 020057 0ustar00barrystaff000000 000000 Version: 7.1.9 (9-Sep-2023) Add support for building against python 3.12 RC2 The following functions have been remove from 3.12 builds: int &_Py_DebugFlag() int &_Py_InteractiveFlag() int &_Py_OptimizeFlag() int &_Py_NoSiteFlag() int &_Py_VerboseFlag() They depend on deprecated variables: Py_DebugFlag, Py_InteractiveFlag, Py_OptimizeFlag Py_NoSiteFlag, Py_VerboseFlag If the value of these variables is needed they can be accessed from sys.flags. _Py_PackageContext is no longer accessible. pysvn-1.9.22/Import/pycxx-7.1.9/COPYRIGHT000644 000765 000024 00000006226 10547732521 017654 0ustar00barrystaff000000 000000 Copyright (c) 1998 - 2007 The Regents of the University of California Produced at the Lawrence Livermore National Laboratory Written by Geoff Furnish, Paul F. Dubois, Barry A. Scott UCRL-CODE-227018 All rights reserved. This file is part of PyCXX. For details, see http://cxx.sourceforge.net. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - Redistributions of source code must retain the above copyright notice, this list of conditions and the disclaimer below. - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the disclaimer (as noted below) in the documentation and/or materials provided with the distribution. - Neither the name of the UC/LLNL nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Additional BSD Notice 1. This notice is required to be provided under our contract with the U.S. Department of Energy (DOE). This work was produced at the University of California, Lawrence Livermore National Laboratory under Contract No. W-7405-ENG-48 with the DOE. 2. Neither the United States Government nor the University of California nor any of their employees, makes any warranty, express or implied, or assumes any liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately-owned rights. 3. Also, reference herein to any specific commercial products, process, or services by trade name, trademark, manufacturer or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or the University of California. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or the University of California, and shall not be used for advertising or product endorsement purposes. pysvn-1.9.22/Import/pycxx-7.1.9/build_tee.py000644 000765 000024 00000001226 14007527023 020654 0ustar00barrystaff000000 000000 #!/usr/bin/env python3 import sys import re def main( argv ): all_copies = [] i_args = iter( argv ) next( i_args ) mode = 'w' for filename in i_args: if filename == '-a': mode = 'a' else: all_copies.append( open( filename, 'w' ) ) colour = re.compile( r'\033\[[\d;]*m' ) for line in sys.stdin: # allow colours to be shown seen sys.stdout.write( line ) # remove colouring from log files. line = colour.sub( '', line ) for copy in all_copies: copy.write( line ) return 0 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Import/pycxx-7.1.9/setup_makefile.py000644 000765 000024 00000064430 14477061356 021740 0ustar00barrystaff000000 000000 # # Copyright (c) 2010-2011 Barry A. Scott # import os import sys import sysconfig import subprocess _debug = False def debug( msg ): if _debug: sys.stderr.write( 'Debug: %s\n' % (msg,) ) #-------------------------------------------------------------------------------- class Setup: def __init__( self, argv ): global _debug args = iter(argv) next(args) self.opt_pycxx_debug = False self.opt_limited_api = None self.opt_warnings_as_errors = False self.opt_cpp_std = None self.opt_cc_std = None self.is_pypy = hasattr( sys, 'pypy_version_info' ) positional_args = [] for arg in args: if arg == '--debug': _debug = True elif arg == '--pycxx-debug': self.opt_pycxx_debug = True elif arg == '--limited-api': self.opt_limited_api = '0x03040000' elif arg.startswith( '--limited-api=' ): api = arg[len('--limited-api='):] if api.startswith( '0x' ): self.opt_limited_api = api else: major, minor = [int(s) for s in api.split('.')] minor *= 0x10000 major *= 0x1000000 self.opt_limited_api = '0x%x' % (major+minor) elif arg.startswith( '--c++-std=' ): self.opt_cpp_std = arg[len('--c++-std='):] elif arg.startswith( '--c-std=' ): self.opt_cc_std = arg[len('--c-std='):] elif arg == '--warnings-as-errors': self.opt_warnings_as_errors = True elif arg.startswith( '--' ): raise ValueError( 'Unknown arg %r' % (arg,) ) else: positional_args.append( arg ) if len(positional_args) != 2: raise ValueError( 'Usage: setup_makefile.py win32|win64|macosx|linux> ' ) self.platform, makefile = positional_args self.__makefile = open( makefile, 'wt' ) self.setupCompile() def makePrint( self, line ): self.__makefile.write( line ) self.__makefile.write( '\n' ) def setupCompile( self ): if self.platform == 'win32': self.c_utils = Win32CompilerMSVC90( self ) self.c_python_extension = Win32CompilerMSVC90( self ) elif self.platform == 'win64': self.c_utils = Win32CompilerMSVC90( self ) self.c_python_extension = Win32CompilerMSVC90( self ) elif self.platform == 'macosx': self.c_utils = MacOsxCompilerGCC( self ) self.c_python_extension = MacOsxCompilerGCC( self ) elif self.platform == 'linux': self.c_utils = LinuxCompilerGCC( self ) self.c_python_extension = LinuxCompilerGCC( self ) else: raise ValueError( 'Unknown platform %r' % (self.platform,) ) self.c_python_extension.setupPythonExtension() self.pycxx_obj_file = [ Source( self.c_python_extension, 'Src/cxxsupport.cxx' ), Source( self.c_python_extension, 'Src/cxx_extensions.cxx' ), Source( self.c_python_extension, 'Src/cxx_exceptions.cxx' ), Source( self.c_python_extension, 'Src/cxxextensions.c' ), Source( self.c_python_extension, 'Src/IndirectPythonInterface.cxx' ), ] self.simple_obj_files = [ Source( self.c_python_extension, '%(DEMO_DIR)s/simple.cxx' ), ] + self.pycxx_obj_file self.example_obj_files = [ Source( self.c_python_extension, '%(DEMO_DIR)s/example.cxx' ), Source( self.c_python_extension, '%(DEMO_DIR)s/range.cxx' ), Source( self.c_python_extension, '%(DEMO_DIR)s/rangetest.cxx' ), ] + self.pycxx_obj_file self.pycxx_iter_obj_files = [ Source( self.c_python_extension, '%(DEMO_DIR)s/pycxx_iter.cxx' ), ] + self.pycxx_obj_file exe_simple = PythonExtension( self.c_python_extension, 'simple', self.simple_obj_files ) exe_example = PythonExtension( self.c_python_extension, 'example', self.example_obj_files ) exe_pycxx_iter = PythonExtension( self.c_python_extension, 'pycxx_iter', self.pycxx_iter_obj_files ) self.all_exe = [ exe_simple, exe_example, exe_pycxx_iter, ] self.all_test = [ TestPythonExtension( self.c_python_extension, '%(DEMO_DIR)s/test_simple.py', exe_simple ), TestPythonExtension( self.c_python_extension, '%(DEMO_DIR)s/test_example.py', exe_example ), TestPythonExtension( self.c_python_extension, '%(DEMO_DIR)s/test_pycxx_iter.py', exe_pycxx_iter ), ] def generateMakefile( self ): try: self.c_python_extension.generateMakefileHeader() self.makePrint( 'all: %s' % (' '.join( [exe.getTargetFilename() for exe in self.all_exe] )) ) self.makePrint( '' ) for exe in self.all_exe: exe.generateMakefile() for test in self.all_test: test.generateMakefile() self.__makefile.close() return 0 except ValueError: e = sys.exc_info()[1] sys.stderr.write( 'Error: %s\n' % (e,) ) return 1 #-------------------------------------------------------------------------------- class Compiler: def __init__( self, setup ): debug( 'Compiler.__init__()' ) self.setup = setup self.__variables = {} self._addVar( 'DEBUG', 'NDEBUG') def platformFilename( self, filename ): return filename def makePrint( self, line ): self.setup.makePrint( line ) def generateMakefileHeader( self ): raise NotImplementedError( 'generateMakefileHeader' ) def _addFromEnv( self, name ): debug( 'Compiler._addFromEnv( %r )' % (name,) ) self._addVar( name, os.environ[ name ] ) def _addVar( self, name, value ): debug( 'Compiler._addVar( %r, %r )' % (name, value) ) try: if '%' in value: value = value % self.__variables self.__variables[ name ] = value except TypeError: raise ValueError( 'Cannot translate name %r value %r' % (name, value) ) except KeyError: e = sys.exc_info()[1] raise ValueError( 'Cannot translate name %r value %r - %s' % (name, value, e) ) def expand( self, s ): try: return s % self.__variables except (TypeError, KeyError): e = sys.exc_info()[1] print( 'Error: %s' % (e,) ) print( 'String: %s' % (s,) ) print( 'Vairables: %r' % (self.__variables,) ) raise ValueError( 'Cannot translate string (%s)' % (e,) ) # MSVC 9.0 and later versions class Win32CompilerMSVC90(Compiler): def __init__( self, setup ): Compiler.__init__( self, setup ) self._addVar( 'PYTHONDIR', sys.exec_prefix ) if setup.opt_limited_api is None: self._addVar( 'PYTHON_LIBNAME', 'python%d%d' % (sys.version_info[0], sys.version_info[1]) ) else: self._addVar( 'PYTHON_LIBNAME', 'python3' ) self._addVar( 'PYTHON_INCLUDE', r'%(PYTHONDIR)s\include' ) self._addVar( 'PYTHON_LIB', r'%(PYTHONDIR)s\libs' ) self._addVar( 'PYTHON', sys.executable ) def platformFilename( self, filename ): return filename.replace( '/', '\\' ) def getPythonExtensionFileExt( self ): return '.pyd' def getProgramExt( self ): return '.exe' def generateMakefileHeader( self ): self.makePrint( '#' ) self.makePrint( '# PyCXX Makefile generated by setup_makefile.py' ) self.makePrint( '#' ) self.makePrint( 'CCC=cl /nologo /W4' ) self.makePrint( 'CC=cl /nologo /W4' ) self.makePrint( '' ) self.makePrint( 'LDSHARED=$(CCC) /LD /Zi /MT /EHsc' ) self.makePrint( 'LDEXE=$(CCC) /Zi /MT /EHsc' ) self.makePrint( '' ) def ruleLinkProgram( self, target ): pyd_filename = target.getTargetFilename() pdf_filename = target.getTargetFilename( '.pdf' ) all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [''] rules.append( '' ) rules.append( '%s : %s' % (pyd_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (pyd_filename,) ) rules.append( '\t$(LDEXE) %%(CCCFLAGS)s /Fe%s /Fd%s %s Advapi32.lib' % (pyd_filename, pdf_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleLinkShared( self, target ): pyd_filename = target.getTargetFilename() pdf_filename = target.getTargetFilename( '.pdf' ) all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [''] rules.append( '' ) rules.append( '%s : %s' % (pyd_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (pyd_filename,) ) rules.append( '\t$(LDSHARED) %%(CCCFLAGS)s /Fe%s /Fd%s %s %%(PYTHON_LIB)s\\%%(PYTHON_LIBNAME)s.lib' % (pyd_filename, pdf_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleCxx( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, target.getTargetFilename()) ) rules.append( '\t$(CCC) /c %%(CCCFLAGS)s /Fo%s /Fd%s %s' % (obj_filename, target.dependent.getTargetFilename( '.pdb' ), target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleC( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, target.getTargetFilename()) ) rules.append( '\t$(CC) /c %%(CCFLAGS)s /Fo%s /Fd%s %s' % (obj_filename, target.dependent.getTargetFilename( '.pdb' ), target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleClean( self, filename ): rules = [] rules.append( 'clean::' ) rules.append( '\tif exist %s del %s' % (filename, filename) ) rules.append( '' ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def setupPythonExtension( self ): self._addVar( 'PYTHON', sys.executable ) self._addVar( 'OBJ_DIR', 'obj' ) self._addVar( 'PYTHON_VERSION', '%d.%d' % (sys.version_info[0], sys.version_info[1]) ) self._addVar( 'DEMO_DIR', 'Demo\\Python%d' % (sys.version_info[0],) ) self._addVar( 'PYCXX_DEBUG', '-DPYCXX_DEBUG=1' if self.setup.opt_pycxx_debug else '' ) self._addVar( 'PYCXX_API', ('-DPy_LIMITED_API=%s' % (self.setup.opt_limited_api,)) if self.setup.opt_limited_api else '' ) self._addVar( 'CCCFLAGS', r'/Zi /MT /EHsc ' r'-I. -ISrc -I%(PYTHON_INCLUDE)s ' r'-D_CRT_NONSTDC_NO_DEPRECATE ' r'-U_DEBUG ' r'-D%(DEBUG)s ' r'%(PYCXX_DEBUG)s' r'%(PYCXX_API)s' ) self._addVar( 'CCFLAGS', r'/Zi /MT ' r'-I. -ISrc -I%(PYTHON_INCLUDE)s ' r'-D_CRT_NONSTDC_NO_DEPRECATE ' r'-U_DEBUG ' r'-D%(DEBUG)s ' r'%(PYCXX_DEBUG)s' r'%(PYCXX_API)s' ) def ruleTest( self, python_test ): rules = [] rules.append( 'test:: %s %s' % (python_test.getTargetFilename(), python_test.python_extension.getTargetFilename()) ) rules.append( '\tset PYTHONPATH=obj' ) rules.append( '\t%%(PYTHON)s -W default %s' % (python_test.getTargetFilename(),) ) rules.append( '' ) self.makePrint( self.expand( '\n'.join( rules ) ) ) class CompilerGCC(Compiler): def __init__( self, setup ): Compiler.__init__( self, setup ) def getPythonExtensionFileExt( self ): return '.so' def getProgramExt( self ): return '' def generateMakefileHeader( self ): self.makePrint( '#' ) self.makePrint( '# PyCXX Makefile generated by setup_makefile.py' ) self.makePrint( '#' ) self.makePrint( '' ) def ruleLinkProgram( self, target ): target_filename = target.getTargetFilename() all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [] rules.append( '%s : %s' % (target_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (target_filename,) ) rules.append( '\t%%(LDEXE)s -o %s %%(CCFLAGS)s %s' % (target_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleLinkShared( self, target ): target_filename = target.getTargetFilename() all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [] rules.append( '%s : %s' % (target_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (target_filename,) ) rules.append( '\t%%(LDSHARED)s -o %s %%(CCFLAGS)s %s' % (target_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleCxx( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, obj_filename) ) rules.append( '\t%%(CCC)s -c %%(CCCFLAGS)s -o%s %s' % (obj_filename, target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleC( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, obj_filename) ) rules.append( '\t%%(CC)s -c %%(CCCFLAGS)s -o%s %s' % (obj_filename, target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleClean( self, filename ): rules = [] rules.append( 'clean::' ) rules.append( '\trm -f %s' % (filename,) ) rules.append( '' ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleTest( self, python_test ): rules = [] rules.append( 'test:: %s %s' % (python_test.getTargetFilename(), python_test.python_extension.getTargetFilename()) ) rules.append( '\tPYTHONPATH=obj %%(PYTHON)s -W default %s' % (python_test.getTargetFilename(),) ) rules.append( '' ) self.makePrint( self.expand( '\n'.join( rules ) ) ) class MacOsxCompilerGCC(CompilerGCC): def __init__( self, setup ): CompilerGCC.__init__( self, setup ) if sys.version_info[0] == 2: maxsize = sys.maxint else: maxsize = sys.maxsize r = subprocess.run( ['lipo', '-archs', sys.executable], capture_output=True ) all_archs = r.stdout.decode('utf-8').strip().split() self._addVar( 'CCC', 'g++ %s' % (' '.join('-arch %s' % (a,) for a in all_archs),) ) self._addVar( 'CC', 'gcc %s' % (' '.join('-arch %s' % (a,) for a in all_archs),) ) def setupPythonExtension( self ): self._addVar( 'PYTHON', sys.executable ) self._addVar( 'OBJ_DIR', 'obj' ) self._addVar( 'PYTHON_VERSION', '%d.%d' % (sys.version_info[0], sys.version_info[1]) ) self._addVar( 'PYTHONDIR', sys.exec_prefix ) self._addVar( 'PYTHON', sys.executable ) if self.setup.is_pypy: self._addVar( 'PYTHON_INCLUDE', '%(PYTHONDIR)s/include' ) self._addVar( 'PYTHON_FRAMEWORK', '%(PYTHONDIR)s/bin/libpypy-c.dylib' ) else: self._addVar( 'PYTHON_INCLUDE', '%(PYTHONDIR)s/Headers' ) self._addVar( 'PYTHON_FRAMEWORK', '%(PYTHONDIR)s/Python' ) self._addVar( 'DEMO_DIR', 'Demo/Python%d' % (sys.version_info[0],) ) self._addVar( 'PYCXX_DEBUG', '-DPYCXX_DEBUG=1' if self.setup.opt_pycxx_debug else '' ) self._addVar( 'PYCXX_API', ('-DPy_LIMITED_API=%s' % (self.setup.opt_limited_api,)) if self.setup.opt_limited_api else '' ) self._addVar( 'WARN_AS_ERROR', '-Werror' if self.setup.opt_warnings_as_errors else '' ) self._addVar( 'CPP_STD', '-std=%s' % (self.setup.opt_cpp_std,) if self.setup.opt_cpp_std is not None else '' ) self._addVar( 'CC_STD', '-std=%s' % (self.setup.opt_cc_std,) if self.setup.opt_cc_std is not None else '' ) self._addVar( 'CCCFLAGS', '-g ' '-Wall -fPIC -fexceptions -frtti ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '%(WARN_AS_ERROR)s ' '%(CPP_STD)s ' '%(PYCXX_DEBUG)s' '%(PYCXX_API)s' ) self._addVar( 'CCFLAGS', '-g ' '-Wall -fPIC ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '-Werror ' '%(PYCXX_DEBUG)s' '%(PYCXX_API)s' ) self._addVar( 'CCCFLAGS', '-g ' '-Wall -fPIC -fexceptions -frtti ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '%(WARN_AS_ERROR)s ' '%(CPP_STD)s ' '%(PYCXX_DEBUG)s' '%(PYCXX_API)s' ) self._addVar( 'CCFLAGS', '-g ' '-Wall -fPIC ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '%(WARN_AS_ERROR)s ' '%(CC_STD)s ' '%(PYCXX_DEBUG)s' '%(PYCXX_API)s' ) self._addVar( 'LDSHARED', '%(CCC)s -bundle -g ' '-framework System ' '%(PYTHON_FRAMEWORK)s ' ) class LinuxCompilerGCC(CompilerGCC): def __init__( self, setup ): CompilerGCC.__init__( self, setup ) self._addVar( 'CCC', 'g++' ) self._addVar( 'CC', 'gcc' ) def setupPythonExtension( self ): self._addVar( 'PYTHON', sys.executable ) self._addVar( 'OBJ_DIR', 'obj' ) self._addVar( 'DEMO_DIR', 'Demo/Python%d' % (sys.version_info[0],) ) self._addVar( 'PYTHON_VERSION', '%d.%d' % (sys.version_info[0], sys.version_info[1]) ) self._addVar( 'PYTHON_INCLUDE', sysconfig.get_path( 'include' ) ) self._addVar( 'PYCXX_DEBUG', '-DPYCXX_DEBUG=1' if self.setup.opt_pycxx_debug else '' ) self._addVar( 'PYCXX_API', ('-DPy_LIMITED_API=%s' % (self.setup.opt_limited_api,)) if self.setup.opt_limited_api else '' ) self._addVar( 'WARN_AS_ERROR', '-Werror' if self.setup.opt_warnings_as_errors else '' ) self._addVar( 'CPP_STD', '-std=%s' % (self.setup.opt_cpp_std,) if self.setup.opt_cpp_std is not None else '' ) self._addVar( 'CC_STD', '-std=%s' % (self.setup.opt_cc_std,) if self.setup.opt_cc_std is not None else '' ) self._addVar( 'CCCFLAGS', '-g ' '-Wall -fPIC -fexceptions -frtti ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '%(WARN_AS_ERROR)s ' '%(CPP_STD)s ' '%(PYCXX_DEBUG)s ' '%(PYCXX_API)s ' ) self._addVar( 'CCFLAGS', '-g ' '-Wall -fPIC ' '-I. -ISrc -I%(PYTHON_INCLUDE)s ' '-D%(DEBUG)s ' '%(WARN_AS_ERROR)s ' '%(CC_STD)s ' '%(PYCXX_DEBUG)s' '%(PYCXX_API)s' ) self._addVar( 'LDEXE', '%(CCC)s -g' ) self._addVar( 'LDSHARED', '%(CCC)s -shared -g ' ) #-------------------------------------------------------------------------------- class Target: def __init__( self, compiler, all_sources ): self.compiler = compiler self.__generated = False self.dependent = None self.all_sources = all_sources for source in self.all_sources: source.setDependent( self ) def getTargetFilename( self ): raise NotImplementedError( '%s.getTargetFilename' % self.__class__.__name__ ) def generateMakefile( self ): if self.__generated: return self.__generated = True return self._generateMakefile() def _generateMakefile( self ): raise NotImplementedError( '_generateMakefile' ) def ruleClean( self, ext=None ): if ext is None: target_filename = self.getTargetFilename() else: target_filename = self.getTargetFilename( ext ) self.compiler.ruleClean( target_filename ) def setDependent( self, dependent ): debug( '%r.setDependent( %r )' % (self, dependent,) ) self.dependent = dependent class TestPythonExtension(Target): def __init__( self, compiler, test_source, python_extension ): self.test_source = test_source self.python_extension = python_extension Target.__init__( self, compiler, [] ) def __repr__( self ): return '' % (id(self), self.test_source ) def getTargetFilename( self ): return self.compiler.platformFilename( self.compiler.expand( self.test_source ) ) def _generateMakefile( self ): self.compiler.ruleTest( self ) class PythonExtension(Target): def __init__( self, compiler, output, all_sources ): self.output = output Target.__init__( self, compiler, all_sources ) debug( 'PythonExtension:0x%8.8x.__init__( %r, ... )' % (id(self), output,) ) for source in self.all_sources: source.setDependent( self ) def __repr__( self ): return '' % (id(self), self.output) def getTargetFilename( self, ext=None ): if ext is None: ext = self.compiler.getPythonExtensionFileExt() return self.compiler.platformFilename( self.compiler.expand( '%%(OBJ_DIR)s/%s%s' % (self.output, ext) ) ) def _generateMakefile( self ): debug( 'PythonExtension:0x%8.8x.generateMakefile() for %r' % (id(self), self.output,) ) self.compiler.ruleLinkShared( self ) self.compiler.ruleClean( self.getTargetFilename( '.*' ) ) for source in self.all_sources: source.generateMakefile() class Source(Target): def __init__( self, compiler, src_filename, all_dependencies=None ): self.src_filename = compiler.platformFilename( compiler.expand( src_filename ) ) Target.__init__( self, compiler, [] ) debug( 'Source:0x%8.8x.__init__( %r, %r )' % (id(self), src_filename, all_dependencies) ) self.all_dependencies = all_dependencies if self.all_dependencies is None: self.all_dependencies = [] def __repr__( self ): return '' % (id(self), self.src_filename) def getTargetFilename( self ): #if not os.path.exists( self.src_filename ): # raise ValueError( 'Cannot find source %s' % (self.src_filename,) ) basename = os.path.basename( self.src_filename ) if basename.endswith( '.cpp' ): return self.compiler.platformFilename( self.compiler.expand( r'%%(OBJ_DIR)s/%s.obj' % (basename[:-len('.cpp')],) ) ) if basename.endswith( '.cxx' ): return self.compiler.platformFilename( self.compiler.expand( r'%%(OBJ_DIR)s/%s.obj' % (basename[:-len('.cxx')],) ) ) if basename.endswith( '.c' ): return self.compiler.platformFilename( self.compiler.expand( r'%%(OBJ_DIR)s/%s.obj' % (basename[:-len('.c')],) ) ) raise ValueError( 'unknown source %r' % (self.src_filename,) ) def _generateMakefile( self ): debug( 'Source:0x%8.8x.generateMakefile() for %r' % (id(self), self.src_filename,) ) if self.src_filename.endswith( '.c' ): self.compiler.ruleC( self ) else: self.compiler.ruleCxx( self ) self.compiler.ruleClean( self.getTargetFilename() ) #-------------------------------------------------------------------------------- def main( argv ): try: s = Setup( argv ) s.generateMakefile() return 0 except ValueError: e = sys.exc_info()[1] sys.stderr.write( 'Error: %s\n' % (e,) ) return 1 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Import/pycxx-7.1.9/run_tests.cmd000644 000765 000024 00000000473 11146621572 021071 0ustar00barrystaff000000 000000 setlocal set PY_MAJ=2 if not "%1" == "" set PY_MAJ=%1 set PY_MIN=5 if not "%2" == "" set PY_MIN=%2 set PYTHONPATH=pyds%PY_MAJ%%PY_MIN% c:\python%PY_MAJ%%PY_MIN%\python Demo\test_example.py if exist pyds%PY_MAJ%%PY_MIN%\pycxx_iter.pyd c:\python%PY_MAJ%%PY_MIN%\python Demo\test_pycxx_iter.py endlocal pysvn-1.9.22/Import/pycxx-7.1.9/build-c++-std-checking.sh000755 000765 000024 00000000252 14300500451 022701 0ustar00barrystaff000000 000000 #!/bin/bash for STD in gnu++98 c++98 gnu++03 c++03 gnu++11 c++11 gnu++14 c++14 gnu++17 c++17 gnu++20 c++20 do ./build-all.sh --c++-std=${STD} 3.8 3.9 3.10 3.11 done pysvn-1.9.22/Import/pycxx-7.1.9/Src/000755 000765 000024 00000000000 14477104307 017103 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Src/cxxextensions.c000644 000765 000024 00000004356 11146072165 022175 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "Src/Python2/cxxextensions.c" #else #include "Src/Python3/cxxextensions.c" #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python3/000755 000765 000024 00000000000 14477104307 020447 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Src/cxxsupport.cxx000644 000765 000024 00000004354 11146072165 022070 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "Src/Python2/cxxsupport.cxx" #else #include "Src/Python3/cxxsupport.cxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python2/000755 000765 000024 00000000000 14477104307 020446 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Src/cxx_exceptions.cxx000644 000765 000024 00000000220 12721375410 022657 0ustar00barrystaff000000 000000 #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "Python2/cxx_exceptions.cxx" #else #include "Python3/cxx_exceptions.cxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/cxx_extensions.cxx000644 000765 000024 00000004354 11146072165 022712 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "Python2/cxx_extensions.cxx" #else #include "Python3/cxx_extensions.cxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/IndirectPythonInterface.cxx000644 000765 000024 00000054071 14477044572 024431 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/IndirectPythonInterface.hxx" namespace Py { static int _IsInstance( PyObject *op, PyTypeObject *type ) { return PyObject_IsInstance( op, reinterpret_cast( type ) ); } bool _CFunction_Check( PyObject *op ) { return _IsInstance( op, _CFunction_Type() ) > 0; } bool _Complex_Check( PyObject *op ) { return _IsInstance( op, _Complex_Type() ) > 0; } bool _Dict_Check( PyObject *op ) { return _IsInstance( op, _Dict_Type() ) > 0; } bool _Float_Check( PyObject *op ) { return _IsInstance( op, _Float_Type() ) > 0; } #if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) bool _Function_Check( PyObject *op ) { return _IsInstance( op, _Function_Type() ) > 0; } #endif bool _Boolean_Check( PyObject *op ) { return _IsInstance( op, _Bool_Type() ) > 0; } bool _List_Check( PyObject *op ) { return _IsInstance( op, _List_Type() ) > 0; } bool _Long_Check( PyObject *op ) { return _IsInstance( op, _Long_Type() ) > 0; } #if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) bool _Method_Check( PyObject *op ) { return _IsInstance( op, _Method_Type() ) > 0; } #endif bool _Module_Check( PyObject *op ) { return _IsInstance( op, _Module_Type() ) > 0; } bool _Range_Check( PyObject *op ) { return _IsInstance( op, _Range_Type() ) > 0; } bool _Slice_Check( PyObject *op ) { return _IsInstance( op, _Slice_Type() ) > 0; } bool _TraceBack_Check( PyObject *op ) { return _IsInstance( op, _TraceBack_Type() ) > 0; } bool _Tuple_Check( PyObject *op ) { return _IsInstance( op, _Tuple_Type() ) > 0; } bool _Type_Check( PyObject *op ) { return _IsInstance( op, _Type_Type() ) > 0; } bool _Unicode_Check( PyObject *op ) { return _IsInstance( op, _Unicode_Type() ) > 0; } #if PY_MAJOR_VERSION == 2 bool _String_Check( PyObject *op ) { return _IsInstance( op, _String_Type() ) > 0; } bool _Int_Check( PyObject *op ) { return _IsInstance( op, _Int_Type() ) > 0; } bool _CObject_Check( PyObject *op ) { return _IsInstance( op, _CObject_Type() ) > 0; } #endif #if PY_MAJOR_VERSION >= 3 bool _Bytes_Check( PyObject *op ) { return _IsInstance( op, _Bytes_Type() ) > 0; } #endif #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) # if defined(MS_WINDOWS) # include static HMODULE python_dll; # define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ static PyObject *ptr_Exc_##eclass = NULL; # if PY_MAJOR_VERSION == 2 # include "CXX/Python2/cxx_standard_exceptions.hxx" # else # include "CXX/Python3/cxx_standard_exceptions.hxx" # endif # undef PYCXX_STANDARD_EXCEPTION static PyTypeObject *ptr__CFunction_Type = NULL; static PyTypeObject *ptr__Complex_Type = NULL; static PyTypeObject *ptr__Dict_Type = NULL; static PyTypeObject *ptr__Float_Type = NULL; # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) static PyTypeObject *ptr__Function_Type = NULL; # endif static PyTypeObject *ptr__Bool_Type = NULL; static PyTypeObject *ptr__List_Type = NULL; static PyTypeObject *ptr__Long_Type = NULL; # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) static PyTypeObject *ptr__Method_Type = NULL; # endif static PyTypeObject *ptr__Module_Type = NULL; static PyTypeObject *ptr__Range_Type = NULL; static PyTypeObject *ptr__Slice_Type = NULL; static PyTypeObject *ptr__TraceBack_Type = NULL; static PyTypeObject *ptr__Tuple_Type = NULL; static PyTypeObject *ptr__Type_Type = NULL; static PyTypeObject *ptr__Unicode_Type = NULL; # if PY_MAJOR_VERSION == 2 static PyTypeObject *ptr__Int_Type = NULL; static PyTypeObject *ptr__String_Type = NULL; static PyTypeObject *ptr__CObject_Type = NULL; # endif # if PY_MAJOR_VERSION >= 3 static PyTypeObject *ptr__Bytes_Type = NULL; # endif # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) # if PY_MAJOR_VERSION == 2 || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11) static int *ptr_Py_DebugFlag = NULL; static int *ptr_Py_InteractiveFlag = NULL; static int *ptr_Py_OptimizeFlag = NULL; static int *ptr_Py_NoSiteFlag = NULL; static int *ptr_Py_VerboseFlag = NULL; # endif # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11 # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 static const char **ptr__Py_PackageContext = NULL; # else static char **ptr__Py_PackageContext = NULL; # endif # endif # endif # ifdef Py_REF_DEBUG int *ptr_Py_RefTotal; # endif //-------------------------------------------------------------------------------- class GetAddressException { public: GetAddressException( const char *_name ) : name( _name ) {} virtual ~GetAddressException() {} const char *name; }; //-------------------------------------------------------------------------------- static PyObject *GetPyObjectPointer_As_PyObjectPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return *(PyObject **)addr; } static PyObject *GetPyObject_As_PyObjectPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return (PyObject *)addr; } static PyTypeObject *GetPyTypeObjectPointer_As_PyTypeObjectPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return *(PyTypeObject **)addr; } static PyTypeObject *GetPyTypeObject_As_PyTypeObjectPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return (PyTypeObject *)addr; } static int *GetInt_as_IntPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return (int *)addr; } static char **GetCharPointer_as_CharPointerPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return (char **)addr; } #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 static char **GetConstCharPointer_as_ConstCharPointerPointer( const char *name ) { FARPROC addr = GetProcAddress( python_dll, name ); if( addr == NULL ) throw GetAddressException( name ); return (const char **)addr; } #endif # ifdef _DEBUG static const char python_dll_name_format[] = "PYTHON%1.1d%1.1d_D.DLL"; # else static const char python_dll_name_format[] = "PYTHON%1.1d%1.1d.DLL"; # endif //-------------------------------------------------------------------------------- bool InitialisePythonIndirectInterface() { char python_dll_name[sizeof(python_dll_name_format)]; _snprintf( python_dll_name, sizeof(python_dll_name_format) / sizeof(char) - 1, python_dll_name_format, PY_MAJOR_VERSION, PY_MINOR_VERSION ); python_dll = LoadLibraryA( python_dll_name ); if( python_dll == NULL ) return false; try { # ifdef Py_REF_DEBUG ptr_Py_RefTotal = GetInt_as_IntPointer( "_Py_RefTotal" ); # endif # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) # if PY_MAJOR_VERSION == 2 || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11) ptr_Py_DebugFlag = GetInt_as_IntPointer( "Py_DebugFlag" ); ptr_Py_InteractiveFlag = GetInt_as_IntPointer( "Py_InteractiveFlag" ); ptr_Py_OptimizeFlag = GetInt_as_IntPointer( "Py_OptimizeFlag" ); ptr_Py_NoSiteFlag = GetInt_as_IntPointer( "Py_NoSiteFlag" ); ptr_Py_VerboseFlag = GetInt_as_IntPointer( "Py_VerboseFlag" ); # endif # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11 # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 ptr__Py_PackageContext = GetConstCharPointer_as_ConstCharPointerPointer( "_Py_PackageContext" ); # else ptr__Py_PackageContext = GetCharPointer_as_CharPointerPointer( "_Py_PackageContext" ); # endif # endif # endif # define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) ptr_Exc_#eclass = GetPyTypeObject_As_PyTypeObjectPointer( "PyExc_" #eclass ); # if PY_MAJOR_VERSION == 2 # include "CXX/Python2/cxx_standard_exceptions.hxx" # else # include "CXX/Python3/cxx_standard_exceptions.hxx" # endif # undef PYCXX_STANDARD_EXCEPTION ptr__PyNone = GetPyObject_As_PyObjectPointer( "_Py_NoneStruct" ); # if PY_MAJOR_VERSION == 2 ptr__PyFalse = GetPyObject_As_PyObjectPointer( "_Py_ZeroStruct" ); # else ptr__PyFalse = GetPyObject_As_PyObjectPointer( "_Py_FalseStruct" ); # endif ptr__PyTrue = GetPyObject_As_PyObjectPointer( "_Py_TrueStruct" ); ptr__CFunction_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyCFunction_Type" ); ptr__Complex_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyComplex_Type" ); ptr__Dict_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyDict_Type" ); ptr__Float_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyFloat_Type" ); # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) ptr__Function_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyFunction_Type" ); # endif ptr__Bool_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyBool_Type" ); ptr__List_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyList_Type" ); ptr__Long_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyLong_Type" ); # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) ptr__Method_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyMethod_Type" ); # endif ptr__Module_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyModule_Type" ); ptr__Range_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyRange_Type" ); ptr__Slice_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PySlice_Type" ); ptr__TraceBack_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyTraceBack_Type" ); ptr__Tuple_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyTuple_Type" ); ptr__Type_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyType_Type" ); ptr__Unicode_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyUnicode_Type" ); # if PY_MAJOR_VERSION == 2 ptr__String_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyString_Type" ); ptr__Int_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyInt_Type" ); ptr__CObject_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyCObject_Type" ); # endif # if PY_MAJOR_VERSION >= 3 ptr__Bytes_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyBytes_Type" ); # endif } catch( GetAddressException &e ) { OutputDebugStringA( python_dll_name ); OutputDebugStringA( " does not contain symbol " ); OutputDebugStringA( e.name ); OutputDebugStringA( "\n" ); return false; } return true; } // // Wrap variables as function calls // PyObject *_Exc_ArithmeticError() { return ptr__Exc_ArithmeticError; } PyObject *_Exc_AssertionError() { return ptr__Exc_AssertionError; } PyObject *_Exc_AttributeError() { return ptr__Exc_AttributeError; } PyObject *_Exc_EnvironmentError() { return ptr__Exc_EnvironmentError; } PyObject *_Exc_EOFError() { return ptr__Exc_EOFError; } PyObject *_Exc_Exception() { return ptr__Exc_Exception; } PyObject *_Exc_FloatingPointError() { return ptr__Exc_FloatingPointError; } PyObject *_Exc_ImportError() { return ptr__Exc_ImportError; } PyObject *_Exc_IndexError() { return ptr__Exc_IndexError; } PyObject *_Exc_IOError() { return ptr__Exc_IOError; } PyObject *_Exc_KeyboardInterrupt() { return ptr__Exc_KeyboardInterrupt; } PyObject *_Exc_KeyError() { return ptr__Exc_KeyError; } PyObject *_Exc_LookupError() { return ptr__Exc_LookupError; } PyObject *_Exc_MemoryError() { return ptr__Exc_MemoryError; } PyObject *_Exc_NameError() { return ptr__Exc_NameError; } PyObject *_Exc_NotImplementedError() { return ptr__Exc_NotImplementedError; } PyObject *_Exc_OSError() { return ptr__Exc_OSError; } PyObject *_Exc_OverflowError() { return ptr__Exc_OverflowError; } PyObject *_Exc_RuntimeError() { return ptr__Exc_RuntimeError; } # if PY_MAJOR_VERSION == 2 PyObject *_Exc_StandardError() { return ptr__Exc_StandardError; } # endif PyObject *_Exc_SyntaxError() { return ptr__Exc_SyntaxError; } PyObject *_Exc_SystemError() { return ptr__Exc_SystemError; } PyObject *_Exc_SystemExit() { return ptr__Exc_SystemExit; } PyObject *_Exc_TypeError() { return ptr__Exc_TypeError; } PyObject *_Exc_ValueError() { return ptr__Exc_ValueError; } # ifdef MS_WINDOWS PyObject *_Exc_WindowsError() { return ptr__Exc_WindowsError; } # endif PyObject *_Exc_ZeroDivisionError() { return ptr__Exc_ZeroDivisionError; } PyObject *_Exc_IndentationError() { return ptr__Exc_IndentationError; } PyObject *_Exc_TabError() { return ptr__Exc_TabError; } PyObject *_Exc_UnboundLocalError() { return ptr__Exc_UnboundLocalError; } PyObject *_Exc_UnicodeError() { return ptr__Exc_UnicodeError; } // // wrap items in Object.h // PyObject *_None() { return ptr__PyNone; } PyObject *_False() { return ptr__PyFalse; } PyObject *_True() { return ptr__PyTrue; } PyTypeObject *_CFunction_Type() { return ptr__CFunction_Type; } PyTypeObject *_Complex_Type() { return ptr__Complex_Type; } PyTypeObject *_Dict_Type() { return ptr__Dict_Type; } PyTypeObject *_Float_Type() { return ptr__Float_Type; } # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) PyTypeObject *_Function_Type() { return ptr__Function_Type; } # endif PyTypeObject *_Bool_Type() { return ptr__Bool_Type; } PyTypeObject *_List_Type() { return ptr__List_Type; } PyTypeObject *_Long_Type() { return ptr__Long_Type; } # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) PyTypeObject *_Method_Type() { return ptr__Method_Type; } # endif PyTypeObject *_Module_Type() { return ptr__Module_Type; } PyTypeObject *_Range_Type() { return ptr__Range_Type; } PyTypeObject *_Slice_Type() { return ptr__Slice_Type; } PyTypeObject *_TraceBack_Type() { return ptr__TraceBack_Type; } PyTypeObject *_Tuple_Type() { return ptr__Tuple_Type; } PyTypeObject *_Type_Type() { return ptr__Type_Type; } PyTypeObject *_Unicode_Type() { return ptr__Unicode_Type; } # if PY_MAJOR_VERSION == 2 PyTypeObject *_String_Type() { return ptr__String_Type; } PyTypeObject *_Int_Type() { return ptr__Int_Type; } PyTypeObject *_CObject_Type() { return ptr__CObject_Type; } # endif # if PY_MAJOR_VERSION >= 3 PyTypeObject *_Bytes_Type() { return ptr__Bytes_Type; } # endif // // wrap the Python Flag variables // # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) # if PY_MAJOR_VERSION == 2 || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11) int &_Py_DebugFlag() { return *ptr_Py_DebugFlag; } int &_Py_InteractiveFlag() { return *ptr_Py_InteractiveFlag; } int &_Py_OptimizeFlag() { return *ptr_Py_OptimizeFlag; } int &_Py_NoSiteFlag() { return *ptr_Py_NoSiteFlag; } int &_Py_VerboseFlag() { return *ptr_Py_VerboseFlag; } # endif # endif # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11 # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 const char *__Py_PackageContext() { return *ptr__Py_PackageContext; } # else char *__Py_PackageContext() { return *ptr__Py_PackageContext; } # endif # endif # if 0 # define Py_INCREF(op) ( \ _Py_INC_REFTOTAL _Py_REF_DEBUG_COMMA \ ((PyObject*)(op))->ob_refcnt++) # define Py_DECREF(op) \ if (_Py_DEC_REFTOTAL _Py_REF_DEBUG_COMMA \ --((PyObject*)(op))->ob_refcnt != 0) \ _Py_CHECK_REFCNT(op) \ else \ _Py_Dealloc((PyObject *)(op)) # endif void _XINCREF( PyObject *op ) { // This function must match the contents of Py_XINCREF(op) if( op == NULL ) return; # ifdef Py_REF_DEBUG (*ptr_Py_RefTotal)++; # endif (op)->ob_refcnt++; } void _XDECREF( PyObject *op ) { // This function must match the contents of Py_XDECREF(op); if( op == NULL ) return; # ifdef Py_REF_DEBUG (*ptr_Py_RefTotal)--; # endif if (--(op)->ob_refcnt == 0) _Py_Dealloc((PyObject *)(op)); } # else # error "Can only delay load under Win32" # endif #else //================================================================================ // // Map onto Macros // //================================================================================ // // Wrap variables as function calls // # define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ PyObject *_Exc_##eclass() { return ::PyExc_##eclass; } # if PY_MAJOR_VERSION == 2 # include "CXX/Python2/cxx_standard_exceptions.hxx" # else # include "CXX/Python3/cxx_standard_exceptions.hxx" # endif # undef PYCXX_STANDARD_EXCEPTION // // wrap items in Object.h // PyObject *_None() { return &::_Py_NoneStruct; } PyObject *_False() { return Py_False; } PyObject *_True() { return Py_True; } PyTypeObject *_CFunction_Type() { return &PyCFunction_Type; } PyTypeObject *_Complex_Type() { return &PyComplex_Type; } PyTypeObject *_Dict_Type() { return &PyDict_Type; } PyTypeObject *_Float_Type() { return &PyFloat_Type; } # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) PyTypeObject *_Function_Type() { return &PyFunction_Type; } # endif PyTypeObject *_Bool_Type() { return &PyBool_Type; } PyTypeObject *_List_Type() { return &PyList_Type; } PyTypeObject *_Long_Type() { return &PyLong_Type; } # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) PyTypeObject *_Method_Type() { return &PyMethod_Type; } # endif PyTypeObject *_Module_Type() { return &PyModule_Type; } PyTypeObject *_Range_Type() { return &PyRange_Type; } PyTypeObject *_Slice_Type() { return &PySlice_Type; } PyTypeObject *_TraceBack_Type() { return &PyTraceBack_Type; } PyTypeObject *_Tuple_Type() { return &PyTuple_Type; } PyTypeObject *_Type_Type() { return &PyType_Type; } PyTypeObject *_Unicode_Type() { return &PyUnicode_Type; } # if PY_MAJOR_VERSION == 2 PyTypeObject *_String_Type() { return &PyString_Type; } PyTypeObject *_Int_Type() { return &PyInt_Type; } PyTypeObject *_CObject_Type() { return &PyCObject_Type; } # endif # if PY_MAJOR_VERSION >= 3 PyTypeObject *_Bytes_Type() { return &PyBytes_Type; } # endif // // wrap flags // # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) # if PY_MAJOR_VERSION == 2 || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11) int &_Py_DebugFlag() { return Py_DebugFlag; } int &_Py_InteractiveFlag() { return Py_InteractiveFlag; } int &_Py_OptimizeFlag() { return Py_OptimizeFlag; } int &_Py_NoSiteFlag() { return Py_NoSiteFlag; } int &_Py_VerboseFlag() { return Py_VerboseFlag; } # endif # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11 # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 const char *__Py_PackageContext() { return _Py_PackageContext; } # else char *__Py_PackageContext() { return _Py_PackageContext; } # endif # endif # endif // // Needed to keep the abstactions for delayload interface // void _XINCREF( PyObject *op ) { Py_XINCREF( op ); } void _XDECREF( PyObject *op ) { Py_XDECREF( op ); } #endif } pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python2/cxxextensions.c000644 000765 000024 00000004370 13662723705 023544 0ustar00barrystaff000000 000000 /*---------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //---------------------------------------------------------------------------*/ #include "CXX/WrapPython.h" #ifdef __cplusplus extern "C" { #endif PyObject py_object_initializer = {PyObject_HEAD_INIT(0)}; #ifdef __cplusplus } #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python2/cxxsupport.cxx000644 000765 000024 00000012115 13662723705 023435 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/Objects.hxx" namespace Py { Py_UNICODE unicode_null_string[1] = { 0 }; Type Object::type () const { return Type (PyObject_Type (p), true); } String Object::str () const { return String (PyObject_Str (p), true); } String Object::repr () const { return String (PyObject_Repr (p), true); } std::string Object::as_string() const { return static_cast(str()); } List Object::dir () const { return List (PyObject_Dir (p), true); } bool Object::isType (const Type& t) const { return type ().ptr() == t.ptr(); } Char::operator String() const { return String(ptr()); } // TMM: non-member operaters for iterators - see above // I've also made a bug fix in respect to the cxx code // (dereffed the left.seq and right.seq comparison) bool operator==(const Sequence::iterator& left, const Sequence::iterator& right) { return left.eql( right ); } bool operator!=(const Sequence::iterator& left, const Sequence::iterator& right) { return left.neq( right ); } bool operator< (const Sequence::iterator& left, const Sequence::iterator& right) { return left.lss( right ); } bool operator> (const Sequence::iterator& left, const Sequence::iterator& right) { return left.gtr( right ); } bool operator<=(const Sequence::iterator& left, const Sequence::iterator& right) { return left.leq( right ); } bool operator>=(const Sequence::iterator& left, const Sequence::iterator& right) { return left.geq( right ); } // now for const_iterator bool operator==(const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.eql( right ); } bool operator!=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.neq( right ); } bool operator< (const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.lss( right ); } bool operator> (const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.gtr( right ); } bool operator<=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.leq( right ); } bool operator>=(const Sequence::const_iterator& left, const Sequence::const_iterator& right) { return left.geq( right ); } // For mappings: bool operator==(const Mapping::iterator& left, const Mapping::iterator& right) { return left.eql( right ); } bool operator!=(const Mapping::iterator& left, const Mapping::iterator& right) { return left.neq( right ); } // now for const_iterator bool operator==(const Mapping::const_iterator& left, const Mapping::const_iterator& right) { return left.eql( right ); } bool operator!=(const Mapping::const_iterator& left, const Mapping::const_iterator& right) { return left.neq( right ); } // TMM: 31May'01 - Added the #ifndef so I can exclude iostreams. #ifndef CXX_NO_IOSTREAMS // output std::ostream& operator<< (std::ostream& os, const Object& ob) { return (os << static_cast(ob.str())); } #endif } // Py pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python2/cxx_exceptions.cxx000644 000765 000024 00000003231 12733320460 024225 0ustar00barrystaff000000 000000 // // cxx_exceptions.cxx // #include #include #include namespace Py { typedef void (*throw_exception_func_t)( void ); std::map py_exc_type_to_exc_func; void addPythonException( ExtensionExceptionType &py_exc_type, throw_exception_func_t func ) { py_exc_type_to_exc_func.insert( std::make_pair( py_exc_type.ptr(), func ) ); } void addPythonException( PyObject *py_exc_type, throw_exception_func_t func ) { py_exc_type_to_exc_func.insert( std::make_pair( py_exc_type, func ) ); } void ifPyErrorThrowCxxException() { if( PyErr_Occurred() ) { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch( &ptype, &pvalue, &ptrace ); PyErr_Restore( ptype, pvalue, ptrace ); Object q( ptype ); std::map::iterator func = py_exc_type_to_exc_func.find( ptype ); if( func != py_exc_type_to_exc_func.end() ) { #ifdef PYCXX_DEBUG std::cout << "ifPyErrorThrowCxxException found throwFunc: " << q << std::endl; #endif (func->second)(); } else { #ifdef PYCXX_DEBUG std::cout << "ifPyErrorThrowCxxException no throwFunc: " << q << std::endl; #endif throw Exception(); } } } void initExceptions() { static bool init_done = false; if( init_done ) { return; } #define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ addPythonException( eclass::exceptionType(), eclass::throwFunc ); #include #undef PYCXX_STANDARD_EXCEPTION init_done = true; } } // end of namespace Py pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python2/cxx_extensions.cxx000644 000765 000024 00000152444 13005636021 024252 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/Extensions.hxx" #include "CXX/Exception.hxx" #include #ifdef PYCXX_DEBUG // // Functions useful when debugging PyCXX // void bpt( void ) { } void printRefCount( PyObject *obj ) { std::cout << "RefCount of 0x" << std::hex << reinterpret_cast< unsigned long >( obj ) << std::dec << " is " << Py_REFCNT( obj ) << std::endl; } #endif namespace Py { #ifdef PYCXX_PYTHON_2TO3 std::string String::as_std_string( const char *encoding, const char *error ) const { if( isUnicode() ) { Bytes encoded( encode( encoding, error ) ); return encoded.as_std_string(); } else { return std::string( PyString_AsString( ptr() ), static_cast( PyString_Size( ptr() ) ) ); } } Bytes String::encode( const char *encoding, const char *error ) const { if( isUnicode() ) { return Bytes( PyUnicode_AsEncodedString( ptr(), encoding, error ) ); } else { return Bytes( PyString_AsEncodedObject( ptr(), encoding, error ) ); } } #else std::string String::as_std_string( const char *encoding, const char *error ) const { if( isUnicode() ) { String encoded( encode( encoding, error ) ); return encoded.as_std_string(); } else { return std::string( PyString_AsString( ptr() ), static_cast( PyString_Size( ptr() ) ) ); } } #endif void Object::validate() { // release pointer if not the right type if( !accepts( p ) ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) std::string s( "PyCXX: Error creating object of type " ); s += (typeid( *this )).name(); if( p != NULL ) { String from_repr = repr(); s += " from "; s += from_repr.as_std_string( "utf-8" ); } else { s += " from (nil)"; } #endif release(); // Error message already set ifPyErrorThrowCxxException(); // Better error message if RTTI available #if defined( _CPPRTTI ) || defined( __GNUG__ ) throw TypeError( s ); #else throw TypeError( "PyCXX: type error." ); #endif } } //================================================================================ // // Implementation of MethodTable // //================================================================================ PyMethodDef MethodTable::method( const char *method_name, PyCFunction f, int flags, const char *doc ) { PyMethodDef m; m.ml_name = const_cast( method_name ); m.ml_meth = f; m.ml_flags = flags; m.ml_doc = const_cast( doc ); return m; } MethodTable::MethodTable() { t.push_back( method( 0, 0, 0, 0 ) ); mt = NULL; } MethodTable::~MethodTable() { delete [] mt; } void MethodTable::add( const char *method_name, PyCFunction f, const char *doc, int flag ) { if( !mt ) { t.insert( t.end()-1, method( method_name, f, flag, doc ) ); } else { throw RuntimeError( "Too late to add a module method!" ); } } PyMethodDef *MethodTable::table() { if( !mt ) { Py_ssize_t t1size = t.size(); mt = new PyMethodDef[ t1size ]; int j = 0; for( std::vector::iterator i = t.begin(); i != t.end(); i++ ) { mt[ j++ ] = *i; } } return mt; } //================================================================================ // // Implementation of ExtensionModule // //================================================================================ ExtensionModuleBase::ExtensionModuleBase( const char *name ) : m_module_name( name ) , m_full_module_name( __Py_PackageContext() != NULL ? std::string( __Py_PackageContext() ) : m_module_name ) , m_method_table() , m_module( NULL ) {} ExtensionModuleBase::~ExtensionModuleBase() {} const std::string &ExtensionModuleBase::name() const { return m_module_name; } const std::string &ExtensionModuleBase::fullName() const { return m_full_module_name; } class ExtensionModuleBasePtr : public PythonExtension { public: ExtensionModuleBasePtr( ExtensionModuleBase *_module ) : module( _module ) {} virtual ~ExtensionModuleBasePtr() {} ExtensionModuleBase *module; }; void ExtensionModuleBase::initialize( const char *module_doc ) { PyObject *module_ptr = new ExtensionModuleBasePtr( this ); m_module = Py_InitModule4 ( const_cast( m_module_name.c_str() ), // name m_method_table.table(), // methods const_cast( module_doc ), // docs module_ptr, // pass to functions as "self" PYTHON_API_VERSION // API version ); } Module ExtensionModuleBase::module( void ) const { return Module( m_full_module_name ); } Dict ExtensionModuleBase::moduleDictionary( void ) const { return module().getDict(); } Object ExtensionModuleBase::moduleObject( void ) const { return Object( m_module ); } //================================================================================ // // Implementation of PythonType // //================================================================================ extern "C" { static void standard_dealloc( PyObject *p ); // // All the following functions redirect the call from Python // onto the matching virtual function in PythonExtensionBase // #if defined( PYCXX_PYTHON_2TO3 ) static int print_handler( PyObject *, FILE *, int ); #endif static PyObject *getattr_handler( PyObject *, char * ); static int setattr_handler( PyObject *, char *, PyObject * ); static PyObject *getattro_handler( PyObject *, PyObject * ); static int setattro_handler( PyObject *, PyObject *, PyObject * ); #if defined( PYCXX_PYTHON_2TO3 ) static int compare_handler( PyObject *, PyObject * ); #endif static PyObject *rich_compare_handler( PyObject *, PyObject *, int ); static PyObject *repr_handler( PyObject * ); static PyObject *str_handler( PyObject * ); static long hash_handler( PyObject * ); static PyObject *call_handler( PyObject *, PyObject *, PyObject * ); static PyObject *iter_handler( PyObject * ); static PyObject *iternext_handler( PyObject * ); // Sequence methods static Py_ssize_t sequence_length_handler( PyObject * ); static PyObject *sequence_concat_handler( PyObject *,PyObject * ); static PyObject *sequence_repeat_handler( PyObject *, Py_ssize_t ); static PyObject *sequence_item_handler( PyObject *, Py_ssize_t ); static PyObject *sequence_slice_handler( PyObject *, Py_ssize_t, Py_ssize_t ); static int sequence_ass_item_handler( PyObject *, Py_ssize_t, PyObject * ); static int sequence_ass_slice_handler( PyObject *, Py_ssize_t, Py_ssize_t, PyObject * ); static PyObject *sequence_inplace_concat_handler( PyObject *, PyObject * ); static PyObject *sequence_inplace_repeat_handler( PyObject *, Py_ssize_t ); static int sequence_contains_handler( PyObject *, PyObject * ); // Mapping static Py_ssize_t mapping_length_handler( PyObject * ); static PyObject *mapping_subscript_handler( PyObject *, PyObject * ); static int mapping_ass_subscript_handler( PyObject *, PyObject *, PyObject * ); // Numeric methods static int number_nonzero_handler( PyObject * ); static PyObject *number_negative_handler( PyObject * ); static PyObject *number_positive_handler( PyObject * ); static PyObject *number_absolute_handler( PyObject * ); static PyObject *number_invert_handler( PyObject * ); static PyObject *number_int_handler( PyObject * ); static PyObject *number_float_handler( PyObject * ); static PyObject *number_long_handler( PyObject * ); static PyObject *number_oct_handler( PyObject * ); static PyObject *number_hex_handler( PyObject * ); static PyObject *number_add_handler( PyObject *, PyObject * ); static PyObject *number_subtract_handler( PyObject *, PyObject * ); static PyObject *number_multiply_handler( PyObject *, PyObject * ); static PyObject *number_divide_handler( PyObject *, PyObject * ); static PyObject *number_remainder_handler( PyObject *, PyObject * ); static PyObject *number_divmod_handler( PyObject *, PyObject * ); static PyObject *number_lshift_handler( PyObject *, PyObject * ); static PyObject *number_rshift_handler( PyObject *, PyObject * ); static PyObject *number_and_handler( PyObject *, PyObject * ); static PyObject *number_xor_handler( PyObject *, PyObject * ); static PyObject *number_or_handler( PyObject *, PyObject * ); static PyObject *number_power_handler( PyObject *, PyObject *, PyObject * ); // Buffer static Py_ssize_t buffer_getreadbuffer_handler( PyObject *, Py_ssize_t, void ** ); static Py_ssize_t buffer_getwritebuffer_handler( PyObject *, Py_ssize_t, void ** ); static Py_ssize_t buffer_getsegcount_handler( PyObject *, Py_ssize_t * ); } extern "C" void standard_dealloc( PyObject *p ) { PyMem_DEL( p ); } bool PythonType::readyType() { return PyType_Ready( table ) >= 0; } PythonType &PythonType::supportSequenceType( int methods_to_support ) { if( !sequence_table ) { sequence_table = new PySequenceMethods; memset( sequence_table, 0, sizeof( PySequenceMethods ) ); // ensure new fields are 0 table->tp_as_sequence = sequence_table; if( methods_to_support&support_sequence_length ) { sequence_table->sq_length = sequence_length_handler; } if( methods_to_support&support_sequence_repeat ) { sequence_table->sq_repeat = sequence_repeat_handler; } if( methods_to_support&support_sequence_item ) { sequence_table->sq_item = sequence_item_handler; } if( methods_to_support&support_sequence_slice ) { sequence_table->sq_slice = sequence_slice_handler; } if( methods_to_support&support_sequence_concat ) { sequence_table->sq_concat = sequence_concat_handler; } if( methods_to_support&support_sequence_ass_item ) { sequence_table->sq_ass_item = sequence_ass_item_handler; } if( methods_to_support&support_sequence_ass_slice ) { sequence_table->sq_ass_slice = sequence_ass_slice_handler; } if( methods_to_support&support_sequence_inplace_concat ) { sequence_table->sq_inplace_concat = sequence_inplace_concat_handler; } if( methods_to_support&support_sequence_inplace_repeat ) { sequence_table->sq_inplace_repeat = sequence_inplace_repeat_handler; } if( methods_to_support&support_sequence_contains ) { sequence_table->sq_contains = sequence_contains_handler; } } return *this; } PythonType &PythonType::supportMappingType( int methods_to_support ) { if( !mapping_table ) { mapping_table = new PyMappingMethods; memset( mapping_table, 0, sizeof( PyMappingMethods ) ); // ensure new fields are 0 table->tp_as_mapping = mapping_table; if( methods_to_support&support_mapping_length ) { mapping_table->mp_length = mapping_length_handler; } if( methods_to_support&support_mapping_subscript ) { mapping_table->mp_subscript = mapping_subscript_handler; } if( methods_to_support&support_mapping_ass_subscript ) { mapping_table->mp_ass_subscript = mapping_ass_subscript_handler; } } return *this; } PythonType &PythonType::supportNumberType( int methods_to_support ) { if( !number_table ) { number_table = new PyNumberMethods; memset( number_table, 0, sizeof( PyNumberMethods ) ); // ensure new fields are 0 table->tp_as_number = number_table; number_table->nb_coerce = 0; if( methods_to_support&support_number_add ) { number_table->nb_add = number_add_handler; } if( methods_to_support&support_number_subtract ) { number_table->nb_subtract = number_subtract_handler; } if( methods_to_support&support_number_multiply ) { number_table->nb_multiply = number_multiply_handler; } if( methods_to_support&support_number_divide ) { number_table->nb_divide = number_divide_handler; } if( methods_to_support&support_number_remainder ) { number_table->nb_remainder = number_remainder_handler; } if( methods_to_support&support_number_divmod ) { number_table->nb_divmod = number_divmod_handler; } if( methods_to_support&support_number_power ) { number_table->nb_power = number_power_handler; } if( methods_to_support&support_number_negative ) { number_table->nb_negative = number_negative_handler; } if( methods_to_support&support_number_positive ) { number_table->nb_positive = number_positive_handler; } if( methods_to_support&support_number_absolute ) { number_table->nb_absolute = number_absolute_handler; } if( methods_to_support&support_number_nonzero ) { number_table->nb_nonzero = number_nonzero_handler; } if( methods_to_support&support_number_invert ) { number_table->nb_invert = number_invert_handler; } if( methods_to_support&support_number_lshift ) { number_table->nb_lshift = number_lshift_handler; } if( methods_to_support&support_number_rshift ) { number_table->nb_rshift = number_rshift_handler; } if( methods_to_support&support_number_and ) { number_table->nb_and = number_and_handler; } if( methods_to_support&support_number_xor ) { number_table->nb_xor = number_xor_handler; } if( methods_to_support&support_number_or ) { number_table->nb_or = number_or_handler; } if( methods_to_support&support_number_int ) { number_table->nb_int = number_int_handler; } if( methods_to_support&support_number_long ) { number_table->nb_long = number_long_handler; } if( methods_to_support&support_number_float ) { number_table->nb_float = number_float_handler; } if( methods_to_support&support_number_oct ) { number_table->nb_oct = number_oct_handler; } if( methods_to_support&support_number_hex ) { number_table->nb_hex = number_hex_handler; } } return *this; } PythonType &PythonType::supportBufferType( int methods_to_support ) { if( !buffer_table ) { buffer_table = new PyBufferProcs; memset( buffer_table, 0, sizeof( PyBufferProcs ) ); // ensure new fields are 0 table->tp_as_buffer = buffer_table; if( methods_to_support&support_buffer_getreadbuffer ) { buffer_table->bf_getreadbuffer = buffer_getreadbuffer_handler; } if( methods_to_support&support_buffer_getwritebuffer ) { buffer_table->bf_getwritebuffer = buffer_getwritebuffer_handler; } if( methods_to_support&support_buffer_getsegcount ) { buffer_table->bf_getsegcount = buffer_getsegcount_handler; } } return *this; } // // if you define add methods that you hook. Use the hook_XXX to choice what to hook. // PythonType::PythonType( size_t basic_size, int itemsize, const char *default_name ) : table( new PyTypeObject ) , sequence_table( NULL ) , mapping_table( NULL ) , number_table( NULL ) , buffer_table( NULL ) { // PyTypeObject is defined in /Include/object.h memset( table, 0, sizeof( PyTypeObject ) ); // ensure new fields are 0 *reinterpret_cast( table ) = py_object_initializer; table->ob_type = _Type_Type(); table->ob_size = 0; table->tp_name = const_cast( default_name ); table->tp_basicsize = basic_size; table->tp_itemsize = itemsize; // Methods to implement standard operations table->tp_dealloc = (destructor)standard_dealloc; table->tp_print = 0; table->tp_getattr = 0; table->tp_setattr = 0; table->tp_compare = 0; table->tp_repr = 0; // Method suites for standard classes table->tp_as_number = 0; table->tp_as_sequence = 0; table->tp_as_mapping = 0; // More standard operations (here for binary compatibility) table->tp_hash = 0; table->tp_call = 0; table->tp_str = 0; table->tp_getattro = 0; table->tp_setattro = 0; // Functions to access object as input/output buffer table->tp_as_buffer = 0; // Flags to define presence of optional/expanded features table->tp_flags = Py_TPFLAGS_DEFAULT; // Documentation string table->tp_doc = 0; #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 0) table->tp_traverse = 0L; // delete references to contained objects table->tp_clear = 0L; #else table->tp_xxx5 = 0L; table->tp_xxx6 = 0L; #endif #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 1) // first defined in 2.1 table->tp_richcompare = 0L; // weak reference enabler table->tp_weaklistoffset = 0L; #else table->tp_xxx7 = 0L; table->tp_xxx8 = 0L; #endif #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 2) // first defined in 2.3 // Iterators table->tp_iter = 0L; table->tp_iternext = 0L; #endif #ifdef COUNT_ALLOCS table->tp_alloc = 0; table->tp_free = 0; table->tp_maxalloc = 0; table->tp_next = 0; #endif } PythonType::~PythonType() { delete table; delete sequence_table; delete mapping_table; delete number_table; delete buffer_table; } PyTypeObject *PythonType::type_object() const { return table; } PythonType &PythonType::name( const char *nam ) { table->tp_name = const_cast( nam ); return *this; } const char *PythonType::getName() const { return table->tp_name; } PythonType &PythonType::doc( const char *d ) { table->tp_doc = const_cast( d ); return *this; } const char *PythonType::getDoc() const { return table->tp_doc; } PythonType &PythonType::set_tp_dealloc( void (*tp_dealloc)( PyObject *self ) ) { table->tp_dealloc = tp_dealloc; return *this; } PythonType &PythonType::set_tp_init( int (*tp_init)( PyObject *self, PyObject *args, PyObject *kwds ) ) { table->tp_init = tp_init; return *this; } PythonType &PythonType::set_tp_new( PyObject *(*tp_new)( PyTypeObject *subtype, PyObject *args, PyObject *kwds ) ) { table->tp_new = tp_new; return *this; } PythonType &PythonType::set_methods( PyMethodDef *methods ) { table->tp_methods = methods; return *this; } PythonType &PythonType::supportClass() { table->tp_flags |= Py_TPFLAGS_BASETYPE; return *this; } PythonType &PythonType::dealloc( void( *f )( PyObject * )) { table->tp_dealloc = f; return *this; } #if defined( PYCXX_PYTHON_2TO3 ) PythonType &PythonType::supportPrint() { table->tp_print = print_handler; return *this; } #endif PythonType &PythonType::supportGetattr() { table->tp_getattr = getattr_handler; return *this; } PythonType &PythonType::supportSetattr() { table->tp_setattr = setattr_handler; return *this; } PythonType &PythonType::supportGetattro() { table->tp_getattro = getattro_handler; return *this; } PythonType &PythonType::supportSetattro() { table->tp_setattro = setattro_handler; return *this; } #if defined( PYCXX_PYTHON_2TO3 ) PythonType &PythonType::supportCompare() { table->tp_compare = compare_handler; return *this; } #endif #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 1) PythonType &PythonType::supportRichCompare() { table->tp_richcompare = rich_compare_handler; return *this; } #endif PythonType &PythonType::supportRepr() { table->tp_repr = repr_handler; return *this; } PythonType &PythonType::supportStr() { table->tp_str = str_handler; return *this; } PythonType &PythonType::supportHash() { table->tp_hash = hash_handler; return *this; } PythonType &PythonType::supportCall() { table->tp_call = call_handler; return *this; } PythonType &PythonType::supportIter( int methods_to_support ) { if( methods_to_support&support_iter_iter ) { table->tp_iter = iter_handler; } if( methods_to_support&support_iter_iternext ) { table->tp_iternext = iternext_handler; } return *this; } //-------------------------------------------------------------------------------- // // Handlers // //-------------------------------------------------------------------------------- PythonExtensionBase *getPythonExtensionBase( PyObject *self ) { if( self->ob_type->tp_flags&Py_TPFLAGS_BASETYPE ) { PythonClassInstance *instance = reinterpret_cast( self ); return instance->m_pycxx_object; } else { return static_cast( self ); } } #if defined( PYCXX_PYTHON_2TO3 ) extern "C" int print_handler( PyObject *self, FILE *fp, int flags ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->print( fp, flags ); } catch( BaseException &) { return -1; // indicate error } } #endif extern "C" PyObject *getattr_handler( PyObject *self, char *name ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->getattr( name ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" int setattr_handler( PyObject *self, char *name, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->setattr( name, Object( value ) ); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *getattro_handler( PyObject *self, PyObject *name ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->getattro( String( name ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" int setattro_handler( PyObject *self, PyObject *name, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->setattro( String( name ), Object( value ) ); } catch( BaseException &) { return -1; // indicate error } } #if defined( PYCXX_PYTHON_2TO3 ) extern "C" int compare_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->compare( Object( other ) ); } catch( BaseException &) { return -1; // indicate error } } #endif #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 1) extern "C" PyObject *rich_compare_handler( PyObject *self, PyObject *other, int op ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->rich_compare( Object( other ), op ) ); } catch( BaseException &) { return NULL; // indicate error } } #endif extern "C" PyObject *repr_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->repr() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *str_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->str() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" long hash_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->hash(); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *call_handler( PyObject *self, PyObject *args, PyObject *kw ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); if( kw != NULL ) return new_reference_to( p->call( Object( args ), Object( kw ) ) ); else return new_reference_to( p->call( Object( args ), Object() ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *iter_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->iter() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *iternext_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->iternext(); // might be a NULL ptr on end of iteration } catch( BaseException &) { return NULL; // indicate error } } // Sequence methods extern "C" Py_ssize_t sequence_length_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_length(); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *sequence_concat_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_concat( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *sequence_repeat_handler( PyObject *self, Py_ssize_t count ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_repeat( count ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *sequence_item_handler( PyObject *self, Py_ssize_t index ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_item( index ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *sequence_slice_handler( PyObject *self, Py_ssize_t first, Py_ssize_t last ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_slice( first, last ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" int sequence_ass_item_handler( PyObject *self, Py_ssize_t index, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_ass_item( index, Object( value ) ); } catch( BaseException &) { return -1; // indicate error } } extern "C" int sequence_ass_slice_handler( PyObject *self, Py_ssize_t first, Py_ssize_t last, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_ass_slice( first, last, Object( value ) ); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *sequence_inplace_concat_handler( PyObject *self, PyObject *o2 ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_inplace_concat( Object( o2 ) ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *sequence_inplace_repeat_handler( PyObject *self, Py_ssize_t count ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_inplace_repeat( count ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int sequence_contains_handler( PyObject *self, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_contains( Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } // Mapping extern "C" Py_ssize_t mapping_length_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->mapping_length(); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *mapping_subscript_handler( PyObject *self, PyObject *key ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->mapping_subscript( Object( key ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" int mapping_ass_subscript_handler( PyObject *self, PyObject *key, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->mapping_ass_subscript( Object( key ), Object( value ) ); } catch( BaseException &) { return -1; // indicate error } } // Number extern "C" int number_nonzero_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->number_nonzero(); } catch( BaseException &) { return -1; // indicate error } } extern "C" PyObject *number_negative_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_negative() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_positive_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_positive() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_absolute_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_absolute() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_invert_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_invert() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_int_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_int() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_float_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_float() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_long_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_long() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_oct_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_oct() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_hex_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_hex() ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_add_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_add( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_subtract_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_subtract( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_multiply_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_multiply( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_divide_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_divide( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_remainder_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_remainder( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_divmod_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_divmod( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_lshift_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_lshift( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_rshift_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_rshift( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_and_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_and( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_xor_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_xor( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_or_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_or( Object( other ) ) ); } catch( BaseException &) { return NULL; // indicate error } } extern "C" PyObject *number_power_handler( PyObject *self, PyObject *x1, PyObject *x2 ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->number_power( Object( x1 ), Object( x2 ) ) ); } catch( BaseException &) { return NULL; // indicate error } } // Buffer extern "C" Py_ssize_t buffer_getreadbuffer_handler( PyObject *self, Py_ssize_t index, void **pp ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->buffer_getreadbuffer( index, pp ); } catch( BaseException &) { return -1; // indicate error } } extern "C" Py_ssize_t buffer_getwritebuffer_handler( PyObject *self, Py_ssize_t index, void **pp ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->buffer_getwritebuffer( index, pp ); } catch( BaseException &) { return -1; // indicate error } } extern "C" Py_ssize_t buffer_getsegcount_handler( PyObject *self, Py_ssize_t *count ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->buffer_getsegcount( count ); } catch( BaseException &) { return -1; // indicate error } } //================================================================================ // // Implementation of PythonExtensionBase // //================================================================================ #define missing_method( method ) \ throw RuntimeError( "Extension object missing implement of " #method ); PythonExtensionBase::PythonExtensionBase() { ob_refcnt = 0; } PythonExtensionBase::~PythonExtensionBase() { assert( ob_refcnt == 0 ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name ) { TupleN args; return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1 ) { TupleN args( arg1 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2 ) { TupleN args( arg1, arg2 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3 ) { TupleN args( arg1, arg2, arg3 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4 ) { TupleN args( arg1, arg2, arg3, arg4 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5 ) { TupleN args( arg1, arg2, arg3, arg4, arg5 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8, const Object &arg9 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 ); return self().callMemberFunction( fn_name, args ); } void PythonExtensionBase::reinit( Tuple &/*args*/, Dict &/*kwds*/ ) { throw RuntimeError( "Must not call __init__ twice on this class" ); } Object PythonExtensionBase::genericGetAttro( const String &name ) { return asObject( PyObject_GenericGetAttr( selfPtr(), name.ptr() ) ); } int PythonExtensionBase::genericSetAttro( const String &name, const Object &value ) { return PyObject_GenericSetAttr( selfPtr(), name.ptr(), value.ptr() ); } int PythonExtensionBase::print( FILE *, int ) { missing_method( print ); } Object PythonExtensionBase::getattr( const char * ) { missing_method( getattr ); } int PythonExtensionBase::setattr( const char *, const Object &) { missing_method( setattr ); } Object PythonExtensionBase::getattro( const String &name ) { return genericGetAttro( name ); } int PythonExtensionBase::setattro( const String &name, const Object &value ) { return genericSetAttro( name, value ); } int PythonExtensionBase::compare( const Object &) { missing_method( compare ); } #if PY_MAJOR_VERSION > 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION >= 1) Object PythonExtensionBase::rich_compare( const Object &, int /*op*/ ) { missing_method( rich_compare ); } #endif Object PythonExtensionBase::repr() { missing_method( repr ); } Object PythonExtensionBase::str() { missing_method( str ); } long PythonExtensionBase::hash() { missing_method( hash ); } Object PythonExtensionBase::call( const Object &, const Object &) { missing_method( call ); } Object PythonExtensionBase::iter() { missing_method( iter ); } PyObject *PythonExtensionBase::iternext() { missing_method( iternext ); } // Sequence methods PyCxx_ssize_t PythonExtensionBase::sequence_length() { missing_method( sequence_length ); } Object PythonExtensionBase::sequence_concat( const Object &) { missing_method( sequence_concat ); } Object PythonExtensionBase::sequence_repeat( Py_ssize_t ) { missing_method( sequence_repeat ); } Object PythonExtensionBase::sequence_item( Py_ssize_t ) { missing_method( sequence_item ); } Object PythonExtensionBase::sequence_slice( Py_ssize_t, Py_ssize_t ) { missing_method( sequence_slice ); } int PythonExtensionBase::sequence_ass_item( Py_ssize_t, const Object &) { missing_method( sequence_ass_item ); } int PythonExtensionBase::sequence_ass_slice( Py_ssize_t, Py_ssize_t, const Object &) { missing_method( sequence_ass_slice ); } Object PythonExtensionBase::sequence_inplace_concat( const Object & ) { missing_method( sequence_inplace_concat ); } Object PythonExtensionBase::sequence_inplace_repeat( Py_ssize_t ) { missing_method( sequence_inplace_repeat ); } int PythonExtensionBase::sequence_contains( const Object & ) { missing_method( sequence_contains ); } // Mapping Sequence::size_type PythonExtensionBase::mapping_length() { missing_method( mapping_length ); } Object PythonExtensionBase::mapping_subscript( const Object &) { missing_method( mapping_subscript ); } int PythonExtensionBase::mapping_ass_subscript( const Object &, const Object &) { missing_method( mapping_ass_subscript ); } // Number int PythonExtensionBase::number_nonzero() { missing_method( number_nonzero ); } Object PythonExtensionBase::number_negative() { missing_method( number_negative ); } Object PythonExtensionBase::number_positive() { missing_method( number_positive ); } Object PythonExtensionBase::number_absolute() { missing_method( number_absolute ); } Object PythonExtensionBase::number_invert() { missing_method( number_invert ); } Object PythonExtensionBase::number_int() { missing_method( number_int ); } Object PythonExtensionBase::number_float() { missing_method( number_float ); } Object PythonExtensionBase::number_long() { missing_method( number_long ); } Object PythonExtensionBase::number_oct() { missing_method( number_oct ); } Object PythonExtensionBase::number_hex() { missing_method( number_hex ); } Object PythonExtensionBase::number_add( const Object &) { missing_method( number_add ); } Object PythonExtensionBase::number_subtract( const Object &) { missing_method( number_subtract ); } Object PythonExtensionBase::number_multiply( const Object &) { missing_method( number_multiply ); } Object PythonExtensionBase::number_divide( const Object &) { missing_method( number_divide ); } Object PythonExtensionBase::number_remainder( const Object &) { missing_method( number_remainder ); } Object PythonExtensionBase::number_divmod( const Object &) { missing_method( number_divmod ); } Object PythonExtensionBase::number_lshift( const Object &) { missing_method( number_lshift ); } Object PythonExtensionBase::number_rshift( const Object &) { missing_method( number_rshift ); } Object PythonExtensionBase::number_and( const Object &) { missing_method( number_and ); } Object PythonExtensionBase::number_xor( const Object &) { missing_method( number_xor ); } Object PythonExtensionBase::number_or( const Object &) { missing_method( number_or ); } Object PythonExtensionBase::number_power( const Object &, const Object &) { missing_method( number_power ); } // Buffer Py_ssize_t PythonExtensionBase::buffer_getreadbuffer( Py_ssize_t, void** ) { missing_method( buffer_getreadbuffer ); } Py_ssize_t PythonExtensionBase::buffer_getwritebuffer( Py_ssize_t, void** ) { missing_method( buffer_getwritebuffer ); } Py_ssize_t PythonExtensionBase::buffer_getsegcount( Py_ssize_t* ) { missing_method( buffer_getsegcount ); } //-------------------------------------------------------------------------------- // // Method call handlers for // PythonExtensionBase // ExtensionModuleBase // //-------------------------------------------------------------------------------- extern "C" PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Object result( self->invoke_method_noargs( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Tuple args( _args ); Object result ( self->invoke_method_varargs ( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ), args ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Tuple args( _args ); if( _keywords == NULL ) { Dict keywords; // pass an empty dict Object result ( self->invoke_method_keyword ( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ), args, keywords ) ); return new_reference_to( result.ptr() ); } else { Dict keywords( _keywords ); // make dict Object result ( self->invoke_method_keyword ( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ), args, keywords ) ); return new_reference_to( result.ptr() ); } } catch( BaseException & ) { return 0; } } extern "C" void do_not_dealloc( void * ) {} //-------------------------------------------------------------------------------- // // ExtensionExceptionType // //-------------------------------------------------------------------------------- ExtensionExceptionType::ExtensionExceptionType() : Object() { } void ExtensionExceptionType::init( ExtensionModuleBase &module, const std::string& name ) { std::string module_name( module.fullName() ); module_name += "."; module_name += name; set( PyErr_NewException( const_cast( module_name.c_str() ), NULL, NULL ), true ); } void ExtensionExceptionType::init( ExtensionModuleBase &module, const std::string& name, ExtensionExceptionType &parent) { std::string module_name( module.fullName() ); module_name += "."; module_name += name; set( PyErr_NewException( const_cast( module_name.c_str() ), parent.ptr(), NULL ), true ); } ExtensionExceptionType::~ExtensionExceptionType() { } // ------------------------------------------------------------ // // BaseException // //------------------------------------------------------------ BaseException::BaseException( ExtensionExceptionType &exception, const std::string &reason ) { PyErr_SetString( exception.ptr(), reason.c_str() ); } BaseException::BaseException( ExtensionExceptionType &exception, Object &reason ) { PyErr_SetObject( exception.ptr(), reason.ptr() ); } BaseException::BaseException( PyObject *exception, Object &reason ) { PyErr_SetObject( exception, reason.ptr() ); } BaseException::BaseException( PyObject *exception, const std::string &reason ) { PyErr_SetString( exception, reason.c_str() ); } BaseException::BaseException() {} void BaseException::clear() { PyErr_Clear(); } bool BaseException::matches( ExtensionExceptionType &exc ) // is the exception this specific exception 'exc' { return PyErr_ExceptionMatches( exc.ptr() ) != 0; } } // end of namespace Py pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python3/cxxextensions.c000644 000765 000024 00000004470 14477053671 023551 0ustar00barrystaff000000 000000 /*---------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //---------------------------------------------------------------------------*/ #include "CXX/WrapPython.h" #ifdef __cplusplus extern "C" { #endif PyObject py_object_initializer = { _PyObject_EXTRA_INIT 1, NULL // type must be init'ed by user }; #ifdef __cplusplus } #endif pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python3/cxxsupport.cxx000644 000765 000024 00000014273 13662723705 023445 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/Objects.hxx" namespace Py { #if !defined(Py_LIMITED_API) Py_UNICODE unicode_null_string[1] = { 0 }; #endif Py_UCS4 ucs4_null_string[1] = { 0 }; Type Object::type() const { return Type( PyObject_Type( p ), true ); } String Object::str() const { return String( PyObject_Str( p ), true ); } String Object::repr() const { return String( PyObject_Repr( p ), true ); } std::string Object::as_string() const { return static_cast( str() ); } List Object::dir() const { return List( PyObject_Dir( p ), true ); } bool Object::isType( const Type &t ) const { return type().ptr() == t.ptr(); } Char::operator String() const { return String( ptr() ); } String Bytes::decode( const char *encoding, const char *error ) { return String( PyUnicode_FromEncodedObject( ptr(), encoding, error ), true ); } // Object compares bool operator==( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_EQ ); ifPyErrorThrowCxxException(); return k != 0; } bool operator!=( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_NE ); ifPyErrorThrowCxxException(); return k != 0; } bool operator>=( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_GE ); ifPyErrorThrowCxxException(); return k != 0; } bool operator<=( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_LE ); ifPyErrorThrowCxxException(); return k != 0; } bool operator<( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_LT ); ifPyErrorThrowCxxException(); return k != 0; } bool operator>( const Object &o1, const Object &o2 ) { int k = PyObject_RichCompareBool( *o1, *o2, Py_GT ); ifPyErrorThrowCxxException(); return k != 0; } // iterator compares bool operator==( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.eql( right ); } bool operator!=( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.neq( right ); } bool operator<( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.lss( right ); } bool operator>( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.gtr( right ); } bool operator<=( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.leq( right ); } bool operator>=( const Sequence::iterator &left, const Sequence::iterator &right ) { return left.geq( right ); } // const_iterator compares bool operator==( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.eql( right ); } bool operator!=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.neq( right ); } bool operator<( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.lss( right ); } bool operator>( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.gtr( right ); } bool operator<=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.leq( right ); } bool operator>=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ) { return left.geq( right ); } // For mappings: bool operator==( const Mapping::iterator &left, const Mapping::iterator &right ) { return left.eql( right ); } bool operator!=( const Mapping::iterator &left, const Mapping::iterator &right ) { return left.neq( right ); } // now for const_iterator bool operator==( const Mapping::const_iterator &left, const Mapping::const_iterator &right ) { return left.eql( right ); } bool operator!=( const Mapping::const_iterator &left, const Mapping::const_iterator &right ) { return left.neq( right ); } // TMM: 31May'01 - Added the #ifndef so I can exclude iostreams. #ifndef CXX_NO_IOSTREAMS // output std::ostream &operator<<( std::ostream &os, const Object &ob ) { return( os << static_cast( ob.str() ) ); } #endif } // Py pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python3/cxx_exceptions.cxx000644 000765 000024 00000003231 12733215337 024234 0ustar00barrystaff000000 000000 // // cxx_exceptions.cxx // #include #include #include namespace Py { typedef void (*throw_exception_func_t)( void ); std::map py_exc_type_to_exc_func; void addPythonException( ExtensionExceptionType &py_exc_type, throw_exception_func_t func ) { py_exc_type_to_exc_func.insert( std::make_pair( py_exc_type.ptr(), func ) ); } void addPythonException( PyObject *py_exc_type, throw_exception_func_t func ) { py_exc_type_to_exc_func.insert( std::make_pair( py_exc_type, func ) ); } void ifPyErrorThrowCxxException() { if( PyErr_Occurred() ) { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch( &ptype, &pvalue, &ptrace ); PyErr_Restore( ptype, pvalue, ptrace ); Object q( ptype ); std::map::iterator func = py_exc_type_to_exc_func.find( ptype ); if( func != py_exc_type_to_exc_func.end() ) { #ifdef PYCXX_DEBUG std::cout << "ifPyErrorThrowCxxException found throwFunc: " << q << std::endl; #endif (func->second)(); } else { #ifdef PYCXX_DEBUG std::cout << "ifPyErrorThrowCxxException no throwFunc: " << q << std::endl; #endif throw Exception(); } } } void initExceptions() { static bool init_done = false; if( init_done ) { return; } #define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ addPythonException( eclass::exceptionType(), eclass::throwFunc ); #include #undef PYCXX_STANDARD_EXCEPTION init_done = true; } } // end of namespace Py pysvn-1.9.22/Import/pycxx-7.1.9/Src/Python3/cxx_extensions.cxx000644 000765 000024 00000156011 14443557171 024264 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/Extensions.hxx" #include "CXX/Exception.hxx" #include "CXX/Objects.hxx" #include #ifdef PYCXX_DEBUG // // Functions useful when debugging PyCXX // void bpt( void ) { } void printRefCount( PyObject *obj ) { std::cout << "RefCount of 0x" << std::hex << reinterpret_cast< unsigned long >( obj ) << std::dec << " is " << Py_REFCNT( obj ) << std::endl; } #endif namespace Py { void Object::validate() { // release pointer if not the right type if( !accepts( p ) ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) std::string s( "PyCXX: Error creating object of type " ); s += (typeid( *this )).name(); if( p != NULL ) { String from_repr = repr(); s += " from "; s += from_repr.as_std_string(); } else { s += " from (nil)"; } #endif release(); // If error message already set ifPyErrorThrowCxxException(); // Better error message if RTTI available #if defined( _CPPRTTI ) || defined( __GNUG__ ) throw TypeError( s ); #else throw TypeError( "PyCXX: type error." ); #endif } } //================================================================================ // // Implementation of MethodTable // //================================================================================ PyMethodDef MethodTable::method( const char *method_name, PyCFunction f, int flags, const char *doc ) { PyMethodDef m; m.ml_name = const_cast( method_name ); m.ml_meth = f; m.ml_flags = flags; m.ml_doc = const_cast( doc ); return m; } MethodTable::MethodTable() { t.push_back( method( 0, 0, 0, 0 ) ); mt = NULL; } MethodTable::~MethodTable() { delete [] mt; } void MethodTable::add( const char *method_name, PyCFunction f, const char *doc, int flag ) { if( !mt ) { t.insert( t.end()-1, method( method_name, f, flag, doc ) ); } else { throw RuntimeError( "Too late to add a module method!" ); } } PyMethodDef *MethodTable::table() { if( !mt ) { Py_ssize_t t1size = t.size(); mt = new PyMethodDef[ t1size ]; int j = 0; for( std::vector::iterator i = t.begin(); i != t.end(); i++ ) { mt[ j++ ] = *i; } } return mt; } //================================================================================ // // Implementation of ExtensionModule // //================================================================================ ExtensionModuleBase::ExtensionModuleBase( const char *name ) : m_module_name( name ) #if defined( Py_LIMITED_API ) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 12) , m_full_module_name( m_module_name ) #else , m_full_module_name( __Py_PackageContext() != NULL ? std::string( __Py_PackageContext() ) : m_module_name ) #endif , m_method_table() //m_module_def , m_module( NULL ) {} ExtensionModuleBase::~ExtensionModuleBase() {} const std::string &ExtensionModuleBase::name() const { return m_module_name; } const std::string &ExtensionModuleBase::fullName() const { return m_full_module_name; } class ExtensionModuleBasePtr : public PythonExtension { public: ExtensionModuleBasePtr( ExtensionModuleBase *_module ) : module( _module ) {} virtual ~ExtensionModuleBasePtr() {} ExtensionModuleBase *module; }; void initExceptions(); void ExtensionModuleBase::initialize( const char *module_doc ) { // init the exception code initExceptions(); memset( &m_module_def, 0, sizeof( m_module_def ) ); m_module_def.m_name = const_cast( m_module_name.c_str() ); m_module_def.m_doc = const_cast( module_doc ); m_module_def.m_methods = m_method_table.table(); // where does module_ptr get passed in? m_module = PyModule_Create( &m_module_def ); } Module ExtensionModuleBase::module( void ) const { return Module( m_module ); } Dict ExtensionModuleBase::moduleDictionary( void ) const { return module().getDict(); } Object ExtensionModuleBase::moduleObject( void ) const { return Object( m_module ); } //================================================================================ // // Implementation of PythonType // //================================================================================ extern "C" { static void standard_dealloc( PyObject *p ); // // All the following functions redirect the call from Python // onto the matching virtual function in PythonExtensionBase // #if defined( PYCXX_PYTHON_2TO3 ) && !defined( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 static int print_handler( PyObject *, FILE *, int ); #endif static PyObject *getattr_handler( PyObject *, char * ); static int setattr_handler( PyObject *, char *, PyObject * ); static PyObject *getattro_handler( PyObject *, PyObject * ); static int setattro_handler( PyObject *, PyObject *, PyObject * ); static PyObject *rich_compare_handler( PyObject *, PyObject *, int ); static PyObject *repr_handler( PyObject * ); static PyObject *str_handler( PyObject * ); static Py_hash_t hash_handler( PyObject * ); static PyObject *call_handler( PyObject *, PyObject *, PyObject * ); static PyObject *iter_handler( PyObject * ); static PyObject *iternext_handler( PyObject * ); // Sequence methods static Py_ssize_t sequence_length_handler( PyObject * ); static PyObject *sequence_concat_handler( PyObject *,PyObject * ); static PyObject *sequence_repeat_handler( PyObject *, Py_ssize_t ); static PyObject *sequence_item_handler( PyObject *, Py_ssize_t ); static int sequence_ass_item_handler( PyObject *, Py_ssize_t, PyObject * ); static PyObject *sequence_inplace_concat_handler( PyObject *, PyObject * ); static PyObject *sequence_inplace_repeat_handler( PyObject *, Py_ssize_t ); static int sequence_contains_handler( PyObject *, PyObject * ); // Mapping static Py_ssize_t mapping_length_handler( PyObject * ); static PyObject *mapping_subscript_handler( PyObject *, PyObject * ); static int mapping_ass_subscript_handler( PyObject *, PyObject *, PyObject * ); // Numeric methods static PyObject *number_negative_handler( PyObject * ); static PyObject *number_positive_handler( PyObject * ); static PyObject *number_absolute_handler( PyObject * ); static PyObject *number_invert_handler( PyObject * ); static PyObject *number_int_handler( PyObject * ); static PyObject *number_float_handler( PyObject * ); static PyObject *number_add_handler( PyObject *, PyObject * ); static PyObject *number_subtract_handler( PyObject *, PyObject * ); static PyObject *number_multiply_handler( PyObject *, PyObject * ); static PyObject *number_remainder_handler( PyObject *, PyObject * ); static PyObject *number_divmod_handler( PyObject *, PyObject * ); static PyObject *number_lshift_handler( PyObject *, PyObject * ); static PyObject *number_rshift_handler( PyObject *, PyObject * ); static PyObject *number_and_handler( PyObject *, PyObject * ); static PyObject *number_xor_handler( PyObject *, PyObject * ); static PyObject *number_or_handler( PyObject *, PyObject * ); static PyObject *number_power_handler( PyObject *, PyObject *, PyObject * ); static PyObject *number_floor_divide_handler( PyObject *, PyObject * ); static PyObject *number_true_divide_handler( PyObject *, PyObject * ); static PyObject *number_index_handler( PyObject * ); #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 static PyObject *number_matrix_multiply_handler( PyObject *, PyObject * ); #endif static PyObject *number_inplace_add_handler( PyObject *, PyObject * ); static PyObject *number_inplace_subtract_handler( PyObject *, PyObject * ); static PyObject *number_inplace_multiply_handler( PyObject *, PyObject * ); static PyObject *number_inplace_remainder_handler( PyObject *, PyObject * ); static PyObject *number_inplace_power_handler( PyObject *, PyObject *, PyObject * ); static PyObject *number_inplace_lshift_handler( PyObject *, PyObject * ); static PyObject *number_inplace_rshift_handler( PyObject *, PyObject * ); static PyObject *number_inplace_and_handler( PyObject *, PyObject * ); static PyObject *number_inplace_xor_handler( PyObject *, PyObject * ); static PyObject *number_inplace_or_handler( PyObject *, PyObject * ); static PyObject *number_inplace_floor_divide_handler( PyObject *, PyObject * ); static PyObject *number_inplace_true_divide_handler( PyObject *, PyObject * ); #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 static PyObject *number_inplace_matrix_multiply_handler( PyObject *, PyObject * ); #endif // Buffer #if !defined( Py_LIMITED_API ) static int buffer_get_handler( PyObject *, Py_buffer *, int ); static void buffer_release_handler( PyObject *, Py_buffer * ); #endif } extern "C" void standard_dealloc( PyObject *p ) { PyMem_DEL( p ); } bool PythonType::readyType() { #if defined( Py_LIMITED_API ) if( !tp_object ) { std::vector spec_slots( slots.size() + 1 ); int index = 0; for (std::unordered_map::const_iterator i = slots.cbegin(); i != slots.cend(); i++) { spec_slots[ index ].slot = i->first; spec_slots[ index ].pfunc = i->second; index++; } spec_slots[ index ].slot = 0; spec->slots = spec_slots.data(); tp_object = reinterpret_cast( PyType_FromSpec(spec) ); } return tp_object != NULL; #else return PyType_Ready( table ) >= 0; #endif } #if defined( Py_LIMITED_API ) #define FILL_SEQUENCE_SLOT(slot) \ if( methods_to_support&support_sequence_ ## slot ) { \ slots[ Py_sq_ ## slot ] = reinterpret_cast( sequence_ ## slot ## _handler ); \ } #else #define FILL_SEQUENCE_SLOT(slot) \ if( methods_to_support&support_sequence_ ## slot ) { \ sequence_table->sq_ ## slot = sequence_ ## slot ## _handler; \ } #endif PythonType &PythonType::supportSequenceType( int methods_to_support ) { #if !defined( Py_LIMITED_API ) if(sequence_table) { return *this; } sequence_table = new PySequenceMethods; memset( sequence_table, 0, sizeof( PySequenceMethods ) ); // ensure new fields are 0 table->tp_as_sequence = sequence_table; #endif FILL_SEQUENCE_SLOT(length) FILL_SEQUENCE_SLOT(concat) FILL_SEQUENCE_SLOT(repeat) FILL_SEQUENCE_SLOT(item) FILL_SEQUENCE_SLOT(ass_item) FILL_SEQUENCE_SLOT(inplace_concat) FILL_SEQUENCE_SLOT(inplace_repeat) FILL_SEQUENCE_SLOT(contains) return *this; } #undef FILL_SEQUENCE_SLOT #if defined( Py_LIMITED_API ) #define FILL_MAPPING_SLOT(slot) \ if( methods_to_support&support_mapping_ ## slot ) { \ slots[ Py_mp_ ## slot ] = reinterpret_cast( mapping_ ## slot ## _handler ); \ } #else #define FILL_MAPPING_SLOT(slot) \ if( methods_to_support&support_mapping_ ## slot ) { \ mapping_table->mp_ ## slot = mapping_ ## slot ## _handler; \ } #endif PythonType &PythonType::supportMappingType( int methods_to_support ) { #if !defined( Py_LIMITED_API ) if( mapping_table ) { return *this; } mapping_table = new PyMappingMethods; memset( mapping_table, 0, sizeof( PyMappingMethods ) ); // ensure new fields are 0 table->tp_as_mapping = mapping_table; #endif FILL_MAPPING_SLOT(length) FILL_MAPPING_SLOT(subscript) FILL_MAPPING_SLOT(ass_subscript) return *this; } #undef FILL_MAPPING_SLOT #if defined( Py_LIMITED_API ) #define FILL_NUMBER_SLOT(slot) \ if( methods_to_support&support_number_ ## slot ) { \ slots[ Py_nb_ ## slot ] = reinterpret_cast( number_ ## slot ## _handler ); \ } #define FILL_NUMBER_INPLACE_SLOT(slot) \ if( inplace_methods_to_support&support_number_ ## slot ) { \ slots[ Py_nb_ ## slot ] = reinterpret_cast( number_ ## slot ## _handler ); \ } #else #define FILL_NUMBER_SLOT(slot) \ if( methods_to_support&support_number_ ## slot ) { \ number_table->nb_ ## slot = number_ ## slot ## _handler; \ } #define FILL_NUMBER_INPLACE_SLOT(slot) \ if( inplace_methods_to_support&support_number_ ## slot ) { \ number_table->nb_ ## slot = number_ ## slot ## _handler; \ } #endif PythonType &PythonType::supportNumberType( int methods_to_support, int inplace_methods_to_support ) { #if !defined( Py_LIMITED_API ) if( number_table ) { return *this; } number_table = new PyNumberMethods; memset( number_table, 0, sizeof( PyNumberMethods ) ); // ensure new fields are 0 table->tp_as_number = number_table; #endif FILL_NUMBER_SLOT(add) FILL_NUMBER_SLOT(subtract) FILL_NUMBER_SLOT(multiply) FILL_NUMBER_SLOT(remainder) FILL_NUMBER_SLOT(divmod) FILL_NUMBER_SLOT(power) FILL_NUMBER_SLOT(negative) FILL_NUMBER_SLOT(positive) FILL_NUMBER_SLOT(absolute) FILL_NUMBER_SLOT(invert) FILL_NUMBER_SLOT(lshift) FILL_NUMBER_SLOT(rshift) FILL_NUMBER_SLOT(and) FILL_NUMBER_SLOT(xor) FILL_NUMBER_SLOT(or) FILL_NUMBER_SLOT(int) FILL_NUMBER_SLOT(float) FILL_NUMBER_SLOT(floor_divide) FILL_NUMBER_SLOT(true_divide) FILL_NUMBER_SLOT(index) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 FILL_NUMBER_SLOT(matrix_multiply) #endif FILL_NUMBER_INPLACE_SLOT(inplace_add) FILL_NUMBER_INPLACE_SLOT(inplace_subtract) FILL_NUMBER_INPLACE_SLOT(inplace_multiply) FILL_NUMBER_INPLACE_SLOT(inplace_remainder) FILL_NUMBER_INPLACE_SLOT(inplace_power) FILL_NUMBER_INPLACE_SLOT(inplace_lshift) FILL_NUMBER_INPLACE_SLOT(inplace_rshift) FILL_NUMBER_INPLACE_SLOT(inplace_and) FILL_NUMBER_INPLACE_SLOT(inplace_xor) FILL_NUMBER_INPLACE_SLOT(inplace_or) FILL_NUMBER_INPLACE_SLOT(inplace_floor_divide) FILL_NUMBER_INPLACE_SLOT(inplace_true_divide) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 FILL_NUMBER_INPLACE_SLOT(inplace_matrix_multiply) #endif return *this; } #undef FILL_NUMBER_SLOT #if !defined( Py_LIMITED_API ) PythonType &PythonType::supportBufferType( int methods_to_support ) { if( !buffer_table ) { buffer_table = new PyBufferProcs; memset( buffer_table, 0, sizeof( PyBufferProcs ) ); // ensure new fields are 0 table->tp_as_buffer = buffer_table; if( methods_to_support&support_buffer_getbuffer ) { buffer_table->bf_getbuffer = buffer_get_handler; } if( methods_to_support&support_buffer_releasebuffer ) { buffer_table->bf_releasebuffer = buffer_release_handler; } } return *this; } #endif // if you define one sequence method you must define // all of them except the assigns #if defined( Py_LIMITED_API ) PythonType::PythonType( size_t basic_size, int itemsize, const char *default_name ) : spec( new PyType_Spec ) { memset( spec, 0, sizeof( PyType_Spec ) ); spec->name = const_cast( default_name ); spec->basicsize = basic_size; spec->itemsize = itemsize; spec->flags = Py_TPFLAGS_DEFAULT; slots[ Py_tp_dealloc ] = reinterpret_cast( standard_dealloc ); tp_object = 0; } #else PythonType::PythonType( size_t basic_size, int itemsize, const char *default_name ) : table( new PyTypeObject ) , sequence_table( NULL ) , mapping_table( NULL ) , number_table( NULL ) , buffer_table( NULL ) { // PyTypeObject is defined in /Include/object.h memset( table, 0, sizeof( PyTypeObject ) ); // ensure new fields are 0 *reinterpret_cast( table ) = py_object_initializer; reinterpret_cast( table )->ob_type = _Type_Type(); // QQQ table->ob_size = 0; table->tp_name = const_cast( default_name ); table->tp_basicsize = basic_size; table->tp_itemsize = itemsize; // Methods to implement standard operations table->tp_dealloc = (destructor)standard_dealloc; #if PY_MINOR_VERSION <= 7 table->tp_print = 0; #endif table->tp_getattr = 0; table->tp_setattr = 0; table->tp_repr = 0; // Method suites for standard classes table->tp_as_number = 0; table->tp_as_sequence = 0; table->tp_as_mapping = 0; // More standard operations (here for binary compatibility) table->tp_hash = 0; table->tp_call = 0; table->tp_str = 0; table->tp_getattro = 0; table->tp_setattro = 0; // Functions to access object as input/output buffer table->tp_as_buffer = 0; // Flags to define presence of optional/expanded features table->tp_flags = Py_TPFLAGS_DEFAULT; // Documentation string table->tp_doc = 0; table->tp_traverse = 0; // delete references to contained objects table->tp_clear = 0; // Assigned meaning in release 2.1 // rich comparisons table->tp_richcompare = 0; // weak reference enabler table->tp_weaklistoffset = 0; // Iterators table->tp_iter = 0; table->tp_iternext = 0; // Attribute descriptor and subclassing stuff table->tp_methods = 0; table->tp_members = 0; table->tp_getset = 0; table->tp_base = 0; table->tp_dict = 0; table->tp_descr_get = 0; table->tp_descr_set = 0; table->tp_dictoffset = 0; table->tp_init = 0; table->tp_alloc = 0; table->tp_new = 0; table->tp_free = 0; // Low-level free-memory routine table->tp_is_gc = 0; // For PyObject_IS_GC table->tp_bases = 0; table->tp_mro = 0; // method resolution order table->tp_cache = 0; table->tp_subclasses = 0; table->tp_weaklist = 0; table->tp_del = 0; // Type attribute cache version tag. Added in version 2.6 table->tp_version_tag = 0; #ifdef COUNT_ALLOCS table->tp_alloc = 0; table->tp_free = 0; table->tp_maxalloc = 0; table->tp_orev = 0; table->tp_next = 0; #endif } #endif PythonType::~PythonType() { #if defined( Py_LIMITED_API ) delete spec; PyObject_Free( tp_object ); #else delete table; delete sequence_table; delete mapping_table; delete number_table; delete buffer_table; #endif } PyTypeObject *PythonType::type_object() const { #if defined( Py_LIMITED_API ) return tp_object; #else return table; #endif } PythonType &PythonType::name( const char *nam ) { #if defined( Py_LIMITED_API ) spec->name = nam; #else table->tp_name = const_cast( nam ); #endif return *this; } const char *PythonType::getName() const { #if defined( Py_LIMITED_API ) return spec->name; #else return table->tp_name; #endif } PythonType &PythonType::doc( const char *d ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_doc ] = reinterpret_cast( const_cast( d ) ); #else table->tp_doc = const_cast( d ); #endif return *this; } const char *PythonType::getDoc() const { #if defined( Py_LIMITED_API ) if( tp_object ) return reinterpret_cast( PyType_GetSlot( tp_object, Py_tp_doc ) ); std::unordered_map::const_iterator slot = slots.find( Py_tp_doc ); if( slot == slots.end() ) return NULL; return reinterpret_cast( slot->second ); #else return table->tp_doc; #endif } PythonType &PythonType::set_tp_dealloc( void (*tp_dealloc)( PyObject *self ) ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_dealloc ] = reinterpret_cast( tp_dealloc ); #else table->tp_dealloc = tp_dealloc; #endif return *this; } PythonType &PythonType::set_tp_init( int (*tp_init)( PyObject *self, PyObject *args, PyObject *kwds ) ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_init ] = reinterpret_cast( tp_init ); #else table->tp_init = tp_init; #endif return *this; } PythonType &PythonType::set_tp_new( PyObject *(*tp_new)( PyTypeObject *subtype, PyObject *args, PyObject *kwds ) ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_new ] = reinterpret_cast( tp_new ); #else table->tp_new = tp_new; #endif return *this; } PythonType &PythonType::set_methods( PyMethodDef *methods ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_methods ] = reinterpret_cast( methods ); #else table->tp_methods = methods; #endif return *this; } PythonType &PythonType::supportClass() { #if defined( Py_LIMITED_API ) spec->flags |= Py_TPFLAGS_BASETYPE; #else table->tp_flags |= Py_TPFLAGS_BASETYPE; #endif return *this; } #if defined( PYCXX_PYTHON_2TO3 ) && !defined( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 PythonType &PythonType::supportPrint() { table->tp_print = print_handler; return *this; } #endif PythonType &PythonType::supportGetattr() { #if defined( Py_LIMITED_API ) slots[ Py_tp_getattr ] = reinterpret_cast( getattr_handler ); #else table->tp_getattr = getattr_handler; #endif return *this; } PythonType &PythonType::supportSetattr() { #if defined( Py_LIMITED_API ) slots[ Py_tp_setattr ] = reinterpret_cast( setattr_handler ); #else table->tp_setattr = setattr_handler; #endif return *this; } PythonType &PythonType::supportGetattro() { #if defined( Py_LIMITED_API ) slots[ Py_tp_getattro ] = reinterpret_cast( getattro_handler ); #else table->tp_getattro = getattro_handler; #endif return *this; } PythonType &PythonType::supportSetattro() { #if defined( Py_LIMITED_API ) slots[ Py_tp_setattro ] = reinterpret_cast( setattro_handler ); #else table->tp_setattro = setattro_handler; #endif return *this; } #ifdef PYCXX_PYTHON_2TO3 PythonType &PythonType::supportCompare( void ) { return *this; } #endif PythonType &PythonType::supportRichCompare() { #if defined( Py_LIMITED_API ) slots[ Py_tp_richcompare ] = reinterpret_cast( rich_compare_handler ); #else table->tp_richcompare = rich_compare_handler; #endif return *this; } PythonType &PythonType::supportRepr() { #if defined( Py_LIMITED_API ) slots[ Py_tp_repr ] = reinterpret_cast( repr_handler ); #else table->tp_repr = repr_handler; #endif return *this; } PythonType &PythonType::supportStr() { #if defined( Py_LIMITED_API ) slots[ Py_tp_str ] = reinterpret_cast( str_handler ); #else table->tp_str = str_handler; #endif return *this; } PythonType &PythonType::supportHash() { #if defined( Py_LIMITED_API ) slots[ Py_tp_hash ] = reinterpret_cast( hash_handler ); #else table->tp_hash = hash_handler; #endif return *this; } PythonType &PythonType::supportCall() { #if defined( Py_LIMITED_API ) slots[ Py_tp_call ] = reinterpret_cast( call_handler ); #else table->tp_call = call_handler; #endif return *this; } PythonType &PythonType::supportIter( int methods_to_support ) { if( methods_to_support&support_iter_iter ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_iter ] = reinterpret_cast( iter_handler ); #else table->tp_iter = iter_handler; #endif } if( methods_to_support&support_iter_iternext ) { #if defined( Py_LIMITED_API ) slots[ Py_tp_iternext ] = reinterpret_cast( iternext_handler ); #else table->tp_iternext = iternext_handler; #endif } return *this; } //-------------------------------------------------------------------------------- // // Handlers // //-------------------------------------------------------------------------------- PythonExtensionBase *getPythonExtensionBase( PyObject *self ) { if(PyType_HasFeature(self->ob_type, Py_TPFLAGS_BASETYPE)) { PythonClassInstance *instance = reinterpret_cast( self ); return instance->m_pycxx_object; } else { return static_cast( self ); } } #if defined( PYCXX_PYTHON_2TO3 ) && !defined ( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 extern "C" int print_handler( PyObject *self, FILE *fp, int flags ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->print( fp, flags ); } catch( BaseException & ) { return -1; // indicate error } } #endif extern "C" PyObject *getattr_handler( PyObject *self, char *name ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->getattr( name ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int setattr_handler( PyObject *self, char *name, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->setattr( name, Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *getattro_handler( PyObject *self, PyObject *name ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->getattro( String( name ) ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int setattro_handler( PyObject *self, PyObject *name, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->setattro( String( name ), Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *rich_compare_handler( PyObject *self, PyObject *other, int op ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->rich_compare( Object( other ), op ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *repr_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->repr() ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *str_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->str() ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" Py_hash_t hash_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->hash(); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *call_handler( PyObject *self, PyObject *args, PyObject *kw ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); if( kw != NULL ) return new_reference_to( p->call( Object( args ), Object( kw ) ) ); else return new_reference_to( p->call( Object( args ), Object() ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *iter_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->iter() ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *iternext_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->iternext(); // might be a NULL ptr on end of iteration } catch( BaseException & ) { return NULL; // indicate error } } // Sequence methods extern "C" Py_ssize_t sequence_length_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_length(); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *sequence_concat_handler( PyObject *self, PyObject *other ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_concat( Object( other ) ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *sequence_repeat_handler( PyObject *self, Py_ssize_t count ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_repeat( count ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *sequence_item_handler( PyObject *self, Py_ssize_t index ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_item( index ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int sequence_ass_item_handler( PyObject *self, Py_ssize_t index, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_ass_item( index, Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *sequence_inplace_concat_handler( PyObject *self, PyObject *o2 ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_inplace_concat( Object( o2 ) ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" PyObject *sequence_inplace_repeat_handler( PyObject *self, Py_ssize_t count ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->sequence_inplace_repeat( count ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int sequence_contains_handler( PyObject *self, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->sequence_contains( Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } // Mapping extern "C" Py_ssize_t mapping_length_handler( PyObject *self ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->mapping_length(); } catch( BaseException & ) { return -1; // indicate error } } extern "C" PyObject *mapping_subscript_handler( PyObject *self, PyObject *key ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return new_reference_to( p->mapping_subscript( Object( key ) ) ); } catch( BaseException & ) { return NULL; // indicate error } } extern "C" int mapping_ass_subscript_handler( PyObject *self, PyObject *key, PyObject *value ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->mapping_ass_subscript( Object( key ), Object( value ) ); } catch( BaseException & ) { return -1; // indicate error } } // Number #define NUMBER_UNARY( slot ) \ extern "C" PyObject *number_ ## slot ## _handler( PyObject *self ) \ { \ try \ { \ PythonExtensionBase *p = getPythonExtensionBase( self ); \ return new_reference_to( p->number_ ## slot() ); \ } \ catch( BaseException & ) \ { \ return NULL; /* indicates error */ \ } \ } #define NUMBER_BINARY( slot ) \ extern "C" PyObject *number_ ## slot ## _handler( PyObject *self, PyObject *other ) \ { \ try \ { \ PythonExtensionBase *p = getPythonExtensionBase( self ); \ return new_reference_to( p->number_ ## slot( Object( other ) ) ); \ } \ catch( BaseException & ) \ { \ return NULL; /* indicates error */ \ } \ } #define NUMBER_TERNARY( slot ) \ extern "C" PyObject *number_ ## slot ## _handler( PyObject *self, PyObject *other1, PyObject *other2 ) \ { \ try \ { \ PythonExtensionBase *p = getPythonExtensionBase( self ); \ return new_reference_to( p->number_ ## slot( Object( other1 ), Object( other2 ) ) ); \ } \ catch( BaseException & ) \ { \ return NULL; /* indicates error */ \ } \ } NUMBER_UNARY( negative ) NUMBER_UNARY( positive ) NUMBER_UNARY( absolute ) NUMBER_UNARY( invert ) NUMBER_UNARY( int ) NUMBER_UNARY( float ) NUMBER_BINARY( add ) NUMBER_BINARY( subtract ) NUMBER_BINARY( multiply ) NUMBER_BINARY( remainder ) NUMBER_BINARY( divmod ) NUMBER_BINARY( lshift ) NUMBER_BINARY( rshift ) NUMBER_BINARY( and ) NUMBER_BINARY( xor ) NUMBER_BINARY( or ) NUMBER_TERNARY( power ) NUMBER_BINARY( floor_divide ) NUMBER_BINARY( true_divide ) NUMBER_UNARY( index ) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 NUMBER_BINARY( matrix_multiply ) #endif NUMBER_BINARY( inplace_add ) NUMBER_BINARY( inplace_subtract ) NUMBER_BINARY( inplace_multiply ) NUMBER_BINARY( inplace_remainder ) NUMBER_TERNARY( inplace_power ) NUMBER_BINARY( inplace_lshift ) NUMBER_BINARY( inplace_rshift ) NUMBER_BINARY( inplace_and ) NUMBER_BINARY( inplace_xor ) NUMBER_BINARY( inplace_or ) NUMBER_BINARY( inplace_floor_divide ) NUMBER_BINARY( inplace_true_divide ) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 NUMBER_BINARY( inplace_matrix_multiply ) #endif #undef NUMBER_UNARY #undef NUMBER_BINARY #undef NUMBER_TERNARY // Buffer #ifndef Py_LIMITED_API extern "C" int buffer_get_handler( PyObject *self, Py_buffer *buf, int flags ) { try { PythonExtensionBase *p = getPythonExtensionBase( self ); return p->buffer_get( buf, flags ); } catch( BaseException & ) { return -1; // indicate error } } extern "C" void buffer_release_handler( PyObject *self, Py_buffer *buf ) { PythonExtensionBase *p = getPythonExtensionBase( self ); p->buffer_release( buf ); // NOTE: No way to indicate error to Python } #endif //================================================================================ // // Implementation of PythonExtensionBase // //================================================================================ #define missing_method( method ) \ throw RuntimeError( "Extension object missing implement of " #method ); PythonExtensionBase::PythonExtensionBase() { ob_refcnt = 0; } PythonExtensionBase::~PythonExtensionBase() { assert( ob_refcnt == 0 ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name ) { TupleN args; return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1 ) { TupleN args( arg1 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2 ) { TupleN args( arg1, arg2 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3 ) { TupleN args( arg1, arg2, arg3 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4 ) { TupleN args( arg1, arg2, arg3, arg4 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5 ) { TupleN args( arg1, arg2, arg3, arg4, arg5 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 ); return self().callMemberFunction( fn_name, args ); } Object PythonExtensionBase::callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8, const Object &arg9 ) { TupleN args( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 ); return self().callMemberFunction( fn_name, args ); } void PythonExtensionBase::reinit( Tuple &/*args*/, Dict &/*kwds*/ ) { throw RuntimeError( "Must not call __init__ twice on this class" ); } Object PythonExtensionBase::genericGetAttro( const String &name ) { return asObject( PyObject_GenericGetAttr( selfPtr(), name.ptr() ) ); } int PythonExtensionBase::genericSetAttro( const String &name, const Object &value ) { return PyObject_GenericSetAttr( selfPtr(), name.ptr(), value.ptr() ); } #if defined( PYCXX_PYTHON_2TO3 ) && !defined( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 int PythonExtensionBase::print( FILE *, int ) { missing_method( print ); } #endif Object PythonExtensionBase::getattr( const char * ) { missing_method( getattr ); } int PythonExtensionBase::setattr( const char *, const Object & ) { missing_method( setattr ); } Object PythonExtensionBase::getattro( const String &name ) { return asObject( PyObject_GenericGetAttr( selfPtr(), name.ptr() ) ); } int PythonExtensionBase::setattro( const String &name, const Object &value ) { return PyObject_GenericSetAttr( selfPtr(), name.ptr(), value.ptr() ); } int PythonExtensionBase::compare( const Object & ) { missing_method( compare ); } Object PythonExtensionBase::rich_compare( const Object &, int ) { missing_method( rich_compare ); } Object PythonExtensionBase::repr() { missing_method( repr ); } Object PythonExtensionBase::str() { missing_method( str ); } long PythonExtensionBase::hash() { missing_method( hash ); } Object PythonExtensionBase::call( const Object &, const Object & ) { missing_method( call ); } Object PythonExtensionBase::iter() { missing_method( iter ); } PyObject *PythonExtensionBase::iternext() { missing_method( iternext ); } // Sequence methods Sequence::size_type PythonExtensionBase::sequence_length() { missing_method( sequence_length ); } Object PythonExtensionBase::sequence_concat( const Object & ) { missing_method( sequence_concat ); } Object PythonExtensionBase::sequence_repeat( Py_ssize_t ) { missing_method( sequence_repeat ); } Object PythonExtensionBase::sequence_item( Py_ssize_t ) { missing_method( sequence_item ); } int PythonExtensionBase::sequence_ass_item( Py_ssize_t, const Object & ) { missing_method( sequence_ass_item ); } Object PythonExtensionBase::sequence_inplace_concat( const Object & ) { missing_method( sequence_inplace_concat ); } Object PythonExtensionBase::sequence_inplace_repeat( Py_ssize_t ) { missing_method( sequence_inplace_repeat ); } int PythonExtensionBase::sequence_contains( const Object & ) { missing_method( sequence_contains ); } // Mapping PyCxx_ssize_t PythonExtensionBase::mapping_length() { missing_method( mapping_length ); } Object PythonExtensionBase::mapping_subscript( const Object & ) { missing_method( mapping_subscript ); } int PythonExtensionBase::mapping_ass_subscript( const Object &, const Object & ) { missing_method( mapping_ass_subscript ); } // Number #define NUMBER_UNARY( slot ) Object PythonExtensionBase::number_ ## slot() \ { missing_method( number_ ## slot ); } #define NUMBER_BINARY( slot ) Object PythonExtensionBase::number_ ## slot( const Object & ) \ { missing_method( number_ ## slot ); } #define NUMBER_TERNARY( slot ) Object PythonExtensionBase::number_ ## slot( const Object &, const Object & ) \ { missing_method( number_ ## slot ); } NUMBER_UNARY( negative ) NUMBER_UNARY( positive ) NUMBER_UNARY( absolute ) NUMBER_UNARY( invert ) NUMBER_UNARY( int ) NUMBER_UNARY( float ) NUMBER_BINARY( add ) NUMBER_BINARY( subtract ) NUMBER_BINARY( multiply ) NUMBER_BINARY( remainder ) NUMBER_BINARY( divmod ) NUMBER_BINARY( lshift ) NUMBER_BINARY( rshift ) NUMBER_BINARY( and ) NUMBER_BINARY( xor ) NUMBER_BINARY( or ) NUMBER_TERNARY( power ) NUMBER_BINARY( floor_divide ) NUMBER_BINARY( true_divide ) NUMBER_UNARY( index ) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 NUMBER_BINARY( matrix_multiply ) #endif NUMBER_BINARY( inplace_add ) NUMBER_BINARY( inplace_subtract ) NUMBER_BINARY( inplace_multiply ) NUMBER_BINARY( inplace_remainder ) NUMBER_TERNARY( inplace_power ) NUMBER_BINARY( inplace_lshift ) NUMBER_BINARY( inplace_rshift ) NUMBER_BINARY( inplace_and ) NUMBER_BINARY( inplace_xor ) NUMBER_BINARY( inplace_or ) NUMBER_BINARY( inplace_floor_divide ) NUMBER_BINARY( inplace_true_divide ) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 NUMBER_BINARY( inplace_matrix_multiply ) #endif #undef NUMBER_UNARY #undef NUMBER_BINARY #undef NUMBER_TERNARY // Buffer #ifndef Py_LIMITED_API int PythonExtensionBase::buffer_get( Py_buffer * /*buf*/, int /*flags*/ ) { missing_method( buffer_get ); } int PythonExtensionBase::buffer_release( Py_buffer * /*buf*/ ) { // This method is optional and only required if the buffer's // memory is dynamic. return 0; } #endif //-------------------------------------------------------------------------------- // // Method call handlers for // PythonExtensionBase // ExtensionModuleBase // //-------------------------------------------------------------------------------- // Note: Python calls noargs as varargs buts args==NULL extern "C" PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCapsule_GetPointer( self_in_cobject, NULL ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Object result( self->invoke_method_noargs( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ) ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCapsule_GetPointer( self_in_cobject, NULL ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Tuple args( _args ); Object result ( self->invoke_method_varargs ( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ), args ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); void *self_as_void = PyCapsule_GetPointer( self_in_cobject, NULL ); if( self_as_void == NULL ) return NULL; ExtensionModuleBase *self = static_cast( self_as_void ); Tuple args( _args ); if( _keywords == NULL ) { Dict keywords; // pass an empty dict Object result ( self->invoke_method_keyword ( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ), args, keywords ) ); return new_reference_to( result.ptr() ); } else { Dict keywords( _keywords ); // make dict Object result ( self->invoke_method_keyword ( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ), args, keywords ) ); return new_reference_to( result.ptr() ); } } catch( BaseException & ) { return 0; } } //-------------------------------------------------------------------------------- // // ExtensionExceptionType // //-------------------------------------------------------------------------------- ExtensionExceptionType::ExtensionExceptionType() : Object() { } void ExtensionExceptionType::init( ExtensionModuleBase &module, const std::string& name ) { std::string module_name( module.fullName() ); module_name += "."; module_name += name; set( PyErr_NewException( const_cast( module_name.c_str() ), NULL, NULL ), true ); } void ExtensionExceptionType::init( ExtensionModuleBase &module, const std::string& name, ExtensionExceptionType &parent ) { std::string module_name( module.fullName() ); module_name += "."; module_name += name; set( PyErr_NewException( const_cast( module_name.c_str() ), parent.ptr(), NULL ), true ); } ExtensionExceptionType::~ExtensionExceptionType() { } BaseException::BaseException( ExtensionExceptionType &exception, const std::string& reason ) { PyErr_SetString( exception.ptr(), reason.c_str() ); } BaseException::BaseException( ExtensionExceptionType &exception, Object &reason ) { PyErr_SetObject( exception.ptr(), reason.ptr() ); } BaseException::BaseException( PyObject *exception, Object &reason ) { PyErr_SetObject( exception, reason.ptr() ); } BaseException::BaseException( PyObject *exception, const std::string &reason ) { PyErr_SetString( exception, reason.c_str() ); } BaseException::BaseException() { } void BaseException::clear() { PyErr_Clear(); } // is the exception this specific exception 'exc' bool BaseException::matches( ExtensionExceptionType &exc ) { return PyErr_ExceptionMatches( exc.ptr() ) != 0; } Object BaseException::errorType() { PyObject *type, *value, *traceback; PyErr_Fetch( &type, &value, &traceback ); Object result( type ); PyErr_Restore( type, value, traceback ); return result; } Object BaseException::errorValue() { PyObject *type, *value, *traceback; PyErr_Fetch( &type, &value, &traceback ); Object result( value ); PyErr_Restore( type, value, traceback ); return result; } //------------------------------------------------------------ #if 1 //------------------------------------------------------------ // compare operators bool operator!=( const Long &a, const Long &b ) { return a.as_long() != b.as_long(); } bool operator!=( const Long &a, int b ) { return a.as_long() != b; } bool operator!=( const Long &a, long b ) { return a.as_long() != b; } bool operator!=( int a, const Long &b ) { return a != b.as_long(); } bool operator!=( long a, const Long &b ) { return a != b.as_long(); } //------------------------------ bool operator==( const Long &a, const Long &b ) { return a.as_long() == b.as_long(); } bool operator==( const Long &a, int b ) { return a.as_long() == b; } bool operator==( const Long &a, long b ) { return a.as_long() == b; } bool operator==( int a, const Long &b ) { return a == b.as_long(); } bool operator==( long a, const Long &b ) { return a == b.as_long(); } //------------------------------ bool operator>( const Long &a, const Long &b ) { return a.as_long() > b.as_long(); } bool operator>( const Long &a, int b ) { return a.as_long() > b; } bool operator>( const Long &a, long b ) { return a.as_long() > b; } bool operator>( int a, const Long &b ) { return a > b.as_long(); } bool operator>( long a, const Long &b ) { return a > b.as_long(); } //------------------------------ bool operator>=( const Long &a, const Long &b ) { return a.as_long() >= b.as_long(); } bool operator>=( const Long &a, int b ) { return a.as_long() >= b; } bool operator>=( const Long &a, long b ) { return a.as_long() >= b; } bool operator>=( int a, const Long &b ) { return a >= b.as_long(); } bool operator>=( long a, const Long &b ) { return a >= b.as_long(); } //------------------------------ bool operator<( const Long &a, const Long &b ) { return a.as_long() < b.as_long(); } bool operator<( const Long &a, int b ) { return a.as_long() < b; } bool operator<( const Long &a, long b ) { return a.as_long() < b; } bool operator<( int a, const Long &b ) { return a < b.as_long(); } bool operator<( long a, const Long &b ) { return a < b.as_long(); } //------------------------------ bool operator<=( const Long &a, const Long &b ) { return a.as_long() <= b.as_long(); } bool operator<=( int a, const Long &b ) { return a <= b.as_long(); } bool operator<=( long a, const Long &b ) { return a <= b.as_long(); } bool operator<=( const Long &a, int b ) { return a.as_long() <= b; } bool operator<=( const Long &a, long b ) { return a.as_long() <= b; } #ifdef HAVE_LONG_LONG //------------------------------ bool operator!=( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() != b; } bool operator!=( PY_LONG_LONG a, const Long &b ) { return a != b.as_long_long(); } //------------------------------ bool operator==( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() == b; } bool operator==( PY_LONG_LONG a, const Long &b ) { return a == b.as_long_long(); } //------------------------------ bool operator>( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() > b; } bool operator>( PY_LONG_LONG a, const Long &b ) { return a > b.as_long_long(); } //------------------------------ bool operator>=( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() >= b; } bool operator>=( PY_LONG_LONG a, const Long &b ) { return a >= b.as_long_long(); } //------------------------------ bool operator<( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() < b; } bool operator<( PY_LONG_LONG a, const Long &b ) { return a < b.as_long_long(); } //------------------------------ bool operator<=( const Long &a, PY_LONG_LONG b ) { return a.as_long_long() <= b; } bool operator<=( PY_LONG_LONG a, const Long &b ) { return a <= b.as_long_long(); } #endif #endif //------------------------------------------------------------ // compare operators bool operator!=( const Float &a, const Float &b ) { return a.as_double() != b.as_double(); } bool operator!=( const Float &a, double b ) { return a.as_double() != b; } bool operator!=( double a, const Float &b ) { return a != b.as_double(); } //------------------------------ bool operator==( const Float &a, const Float &b ) { return a.as_double() == b.as_double(); } bool operator==( const Float &a, double b ) { return a.as_double() == b; } bool operator==( double a, const Float &b ) { return a == b.as_double(); } //------------------------------ bool operator>( const Float &a, const Float &b ) { return a.as_double() > b.as_double(); } bool operator>( const Float &a, double b ) { return a.as_double() > b; } bool operator>( double a, const Float &b ) { return a > b.as_double(); } //------------------------------ bool operator>=( const Float &a, const Float &b ) { return a.as_double() >= b.as_double(); } bool operator>=( const Float &a, double b ) { return a.as_double() >= b; } bool operator>=( double a, const Float &b ) { return a >= b.as_double(); } //------------------------------ bool operator<( const Float &a, const Float &b ) { return a.as_double() < b.as_double(); } bool operator<( const Float &a, double b ) { return a.as_double() < b; } bool operator<( double a, const Float &b ) { return a < b.as_double(); } //------------------------------ bool operator<=( const Float &a, const Float &b ) { return a.as_double() <= b.as_double(); } bool operator<=( double a, const Float &b ) { return a <= b.as_double(); } bool operator<=( const Float &a, double b ) { return a.as_double() <= b; } } // end of namespace Py pysvn-1.9.22/Import/pycxx-7.1.9/Doc/Python3/000755 000765 000024 00000000000 14477104307 020425 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Doc/Python2/000755 000765 000024 00000000000 14477104307 020424 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Doc/Python2/style.css000644 000765 000024 00000003047 11146615306 022276 0ustar00barrystaff000000 000000 /* Copyright (c) 2008-2009 Barry A. Scott */ h1, h2, h3, h4 { color: #000099; background-color: #aaaaff; } h3 { position: relative; left: 20px margin-right: 40px; } body { background-color: #ffffff; width: 95%; } p { position: relative; left: 20px; width: 45em; margin-right: 40px; } pre { color: #0000cc; background-color: #eeeeee; position: relative; left: 40px; margin-right: 80px; border-style: solid; border-color: black; border-width: thin; } kbd { color: #990000; } p cite, ol cite, ul cite { font-family: monospace; font-style: normal; font-size: normal; } li { width: 43em; } li var, pre var, p var, kbd var { color: #009900; font-style: italic; } li samp, pre samp, p samp, kbd samp { color: #009900; font-weight: bold; } li p { position: relative; left: 0; } table { position: relative; left: 20px; margin-right: 40px; border: solid #888888 1px; background-color: #eeeeee; } table th { border: solid #888888 1px; background-color: #88dd88; color: black; text-align: left; } table td { border: solid #888888 1px; } table td.code { border: solid #888888 1px; font-family: monospace; font-style: normal; font-size: normal; } p.param { background-color: #eeeeee; border-top: lightskyblue solid 4; } p.center { text-align: center; } pysvn-1.9.22/Import/pycxx-7.1.9/Doc/Python2/PyCXX.html000644 000765 000024 00000202404 13305260623 022260 0ustar00barrystaff000000 000000 Writing Python Extensions in C++ with PyCXX

    Writing Python Extensions in C++

    Barry Scott
    Reading, Berkshire, England
    barry@barrys-emacs.org

    Paul F. Dubois, dubois1@llnl.gov
    Lawrence Livermore National Laboratory
    Livermore, California, U.S.A.

    Acknowledgment

    Thank you to Geoffrey Furnish for patiently teaching me the finer points of C++ and its template facility, and his critique of PyCXX in particular. With version 4 I welcome Barry Scott as co-author. -- Paul Dubois

    Paul is no longer contributing to PyCXX. Thanks for all your great work on PyCXX Paul. -- Barry Scott.

    Overview

    PyCXX is designed to make it easier to extend Python with C++

    PyCXX is a set of C++ facilities to make it easier to write Python extensions. The chief way in which PyCXX makes it easier to write Python extensions is that it greatly increases the probability that your program will not make a reference-counting error and will not have to continually check error returns from the Python C API. PyCXX integrates Python with C++ in these ways:

    • C++ exception handling is relied on to detect errors and clean up. In a complicated function this is often a tremendous problem when writing in C. With PyCXX, we let the compiler keep track of what objects need to be dereferenced when an error occurs.
    • The Standard Template Library (STL) and its many algorithms plug and play with Python containers such as lists and tuples.
    • The optional CXX/Extensions facility allows you to replace the clumsy C tables with objects and method calls that define your modules and extension objects.

    Download and Installation

    Download PyCXX from http://sourceforge.net/projects/cxx/.

    The distribution layout is:

    DirectoryDescription
    .Makefile for Unix and Windows, Release documentation
    ./CXXHeader files
    ./SrcSource files
    ./DocDocumentation
    ./DemoTesting and Demonstartion files

    To use PyCXX you use its include files and add its source routines to your module.

    Installation:

    • Install the PyCXX files into a directory of your choice. For example:
      Windows: C:\PyCXX
      Unix: /usr/local/PyCXX
    • Tell your compiler where the PyCXX header files are:
      Windows: cl /I=C:\PyCXX ...
      Unix: g++ -I/usr/local/PyCXX ...
    • Include PyCXX headers files in your code using the CXX prefix:
      #include "CXX/Objects.hxx"

    The header file CXX/config.h may need to be adjusted for the compiler you use. As of this writing, only a fairly obscure reference to part of the standard library needs this adjustment. Unlike prior releases, PyCXX now assumes namespace support and a standard C++ library.

    PyCXX - Supporting Python 2 and Python 3

    It is possible to have common code that can be compiled to work with Python 2 or Python 3.

    Define PYCXX_PYTHON_2TO3 to turn on the compatibility support. When compiling against Python 2 this means faking up the Python 3 API and when compiling against Python 3 faking the old Python 2 API.

    The changes from Python 2 to Python 3 that require code changes are:

    • string is unicode only in Python 3 - Py::String API changed to match python 3 usage
    • byte is for byte date in Python 3 - Py::Bytes added to PyCXX
    • int has been removed - Py::Int has been removed from PyCXX

    This means that you will need to:

    • Replace Py::Nothing with Py::None - required
    • Replace Py::Int with Py::Long - recommended
    • Replace Py::LongLong with Py::Long -recommended
    • Replace as_std_string() with as_std_string( "encoding" ) or as_std_string( NULL ) - required
    • Replace Py::String that holds non unicode data with Py::Bytes - required

    Use of namespaces

    All PyCXX assets are in namespace "Py". You need to include the Py:: prefix when referring to them, or include the statement:

    using namespace Py;

    Wrappers for standard objects: CXX/Objects.hxx

    Header file CXX/Objects.hxx requires adding file Src/cxxsupport.cxx and Src/IndirectPythonInterface.cxx to your module sources. CXX/Objects provides a set of wrapper classes that allow you access to most of the Python C API using a C++ notation that closely resembles Python. For example, this Python:

    d = {}
    d["a"] = 1
    d["b"] = 2
    alist = d.keys()
    print alist

    Can be written in C++:

    Dict d;
    List alist;
    d["a"] = Int(1);
    d["b"] = Int(2);
    alist = d.keys();
    std::cout << alist << std::endl;
    

    You can optionally use the CXX/Extensions.hxx facility described later to define Python extension modules and extension objects.

    We avoid programming with Python object pointers

    The essential idea is that we avoid, as much as possible, programming with pointers to Python objects, that is, variables of type PyObject*. Instead, we use instances of a family of C++ classes that represent the usual Python objects. This family is easily extendible to include new kinds of Python objects.

    For example, consider the case in which we wish to write a method, taking a single integer argument, that will create a Python dict and insert into it that the integer plus one under the key value. In C we might do that as follows:

    static PyObject* mymodule_addvalue (PyObject* args)
    {
        PyObject *d;
        PyObject* f;
        int k;
        PyArgs_ParseTuple(args, "i", &k);
        d = PyDict_New();
        if (!d)
            return NULL;
    
        f = PyInt_NEW(k+1);
        if(!f)
        {
            Py_DECREF(d); /* have to get rid of d first */
            return NULL;
        }
        if(PyDict_SetItemString(d, "value", f) == -1)
        {
            Py_DECREF(f);
            Py_DECREF(d);
            return NULL;
        }
    
        return d;
    }

    If you have written a significant Python extension, this tedium looks all too familiar. The vast bulk of the coding is error checking and cleanup. Now compare the same thing written in C++ using CXX/Objects.hxx. The things with Python-like names (Int, Dict, Tuple) are from CXX/Objects.hxx.

    static PyObject* mymodule_addvalue (PyObject* pargs)
    { 
        try
        {
            Tuple args(pargs); 
            args.verify_length(1); 
    
            Dict d; 
            Int k = args[0]; 
            d["value"] = k + 1;
    
            return new_reference_to(d); 
        } 
        catch (const PyException&)
        { 
            return NULL;
        }
    }

    If there are not the right number of arguments or the argument is not an integer, an exception is thrown. In this case we choose to catch it and convert it into a Python exception. The C++ exception handling mechanism takes care all the cleanup.

    Note that the creation of the Int k got the first argument and verified that it is an Int.

    Just to peek ahead, if you wrote this method in an ExtensionModule-derived module of your own, it would be a method and it could be written even more simply:

    Object addvalue (const Tuple & args)
    {
        args.verify_length(1);
        Dict d;
        Int k = args[0];
        d["value"] = k + 1;
        return d;
    }
    

    The basic concept is to wrap Python pointers

    The basic concept of CXX/Objects.hxx is to create a wrapper around each PyObject * so that the reference counting can be done automatically, thus eliminating the most frequent source of errors. In addition, we can then add methods and operators so that Python objects can be manipulated in C++ much like you would in Python.

    Each Object contains a PyObject * to which it owns a reference. When an Object is destroyed, it releases its ownership on the pointer. Since C++ calls the destructors on objects that are about to go out of scope, we are guaranteed that we will keep the reference counts right even if we unexpectedly leave a routine with an exception.

    As a matter of philosophy, CXX/Objects.hxx prevents the creation of instances of its classes unless the instance will be a valid instance of its class. When an attempt is made to create an object that will not be valid, an exception is thrown.

    Class Object represents the most general kind of Python object. The rest of the classes that represent Python objects inherit from it.

    Object
    Type
    Int
    Float
    Long
    Complex
    Char
    Sequence -> SeqBase<T>
        String
        Tuple
        List
    Mapping -> MapBase<T>
        Dict
    Callable
    Module

    There are several constructors for each of these classes. For example, you can create an Int from an integer as in

    Int s(3)

    However, you can also create an instance of one of these classes using any PyObject* or another Object. If the corresponding Python object does not actually have the type desired, an exception is thrown. This is accomplished as follows. Class Object defines a virtual function accepts:

    virtual bool accepts(PyObject* p)

    The base class version of accepts returns true for any pointer p except 0. This means we can create an Object using any PyObject *, or from any other Object. However, if we attempt to create an Int from a PyObject *, the overridding version of accepts in class Int will only accept pointers that correspond to Python ints. Therefore if we have a Tuple t and we wish to get the first element and be sure it is an Int, we do

    Int first_element = t[0]

    This will not only accomplish the goal of extracting the first element of the Tuple t, but it will ensure that the result is an Int. If not, an exception is thrown. The exception mechanism is discussed later.

    Class Object

    Class Object serves as the base class for the other classes. Its default constructor constructs a Py_None, the unique object of Python type None. The interface to Object consists of a large number of methods corresponding to the operations that are defined for every Python object. In each case, the methods throw an exception if anything goes wrong.

    There is no method corresponding to PyObject_SetItem with an arbitrary Python object as a key. Instead, create an instance of a more specific child of Object and use the appropriate facilities.

    The comparison operators use the Python comparison function to compare values. The method is is available to test for absolute identity.

    A conversion to standard library string type std::string is supplied using method as_string. Stream output of PyCXX Object instances uses this conversion, which in turn uses the Python object's str() representation.

    All the numeric operators are defined on all possible combinations of Object, long, and double. These use the corresponding Python operators, and should the operation fail for some reason, an exception is thrown.

    Dealing with pointers returned by the Python C API

    Often, PyObject * pointers are acquired from some function, particularly functions in the Python C API. If you wish to make an object from the pointer returned by such a function, you need to know if the function returns you an owned or unowned reference. Unowned references are unusual but there are some cases where unowned references are returned.

    Usually, Object and its children acquire a new reference when constructed from a PyObject *. This is usually not the right behavior if the reference comes from one of the Python C API calls.

    If p is an owned reference, you can add the boolean true as an extra argument in the creation routine, Object(p, true), or use the function asObject(p) which returns an Object created using the owned reference. For example, the routine PyString_FromString returns an owned reference to a Python string object. You could write:

    Object w = asObject( PyString_FromString("my string") );

    or using the constructor,

    Object w( PyString_FromString("my string"), true );

    In fact, you would never do this, since PyCXX has a class String and you can just say:

    String w( "my string" );

    Indeed, since most of the Python C API is similarly embodied in Object and its descendents, you probably will not use asObject all that often.

    Table 1: Class Object

    Returns Name(signature) Comment

    Basic Methods

    explicit Object (PyObject* pyob=Py_None, bool owned=false) Construct from pointer.
    explicit Object (const Object& ob) Copycons; acquires an owned reference.
    Object& operator= (const Object& rhs) Acquires an owned reference.
    Object& operator= (PyObject* rhsp) Acquires an owned reference.
    virtual ~Object () Releases the reference.
    void increment_reference_count() Explicitly increment the count
    void decrement_reference_count() Explicitly decrement count but not to zero
    PyObject* operator* () const Lends the pointer
    PyObject* ptr () const Lends the pointer
    virtual bool accepts (PyObject *pyob) const Would assignment of pyob to this object succeed?
    std::string as_string() const str() representation
    Python API Interface
    int reference_count () const reference count
    Type type () const associated type object
    String str () const str() representation
    String repr () const repr () representation
    bool hasAttr (const std::string& s) const hasattr(this, s)
    Object getAttr (const std::string& s) const getattr(this, s)
    Object getItem (const Object& key) const getitem(this, key)
    long hashValue () const hash(this)
    void setAttr (const std::string& s,
    const Object& value)
    this.s = value
    void delAttr (const std::string& s) del this.s
    void delItem (const Object& key) del this[key]
    bool isCallable () const does this have callable behavior?
    bool isList () const is this a Python list?
    bool isMapping () const does this have mapping behaviors?
    bool isNumeric () const does this have numeric behaviors?
    bool isSequence () const does this have sequence behaviors?
    bool isTrue () const is this true in the Python sense?
    bool isType (const Type& t) const is type(this) == t?
    bool isTuple() const is this a Python tuple?
    bool isString() const is this a Python string?
    bool isUnicode() const is this a Python Unicode string?
    bool isDict() const is this a Python dictionary?
    Comparison Operators
    bool is(PyObject* pother) const test for identity
    bool is(const Object& other) const test for identity
    bool operator==(const Object& o2) const Comparisons use Python cmp
    bool operator!=(const Object& o2) const Comparisons use Python cmp
    bool operator>=(const Object& o2) const Comparisons use Python cmp
    bool operator<=(const Object& o2) const Comparisons use Python cmp
    bool operator<(const Object& o2) const Comparisons use Python cmp
    bool operator>(const Object& o2) const Comparisons use Python cmp

    The Basic Types

    Corresponding to each of the basic Python types is a class that inherits from Object. Here are the interfaces for those types. Each of them inherits from Object and therefore has all of the inherited methods listed for Object. Where a virtual function is overridden in a class, the name is underlined.

    Class Type

    Class Type corresponds to Python type objects. There is no default constructor.

    Table 2: class Type

    Returns Name and Signature Comments
    explicit Type (PyObject* pyob, bool owned = false) Constructor
    explicit Type (const Object& ob) Constructor
    explicit Type(const Type& t) Copycons
    Type& operator= (const Object& rhs) Assignment
    Type& operator= (PyObject* rhsp) Assignment
    virtual bool accepts (PyObject *pyob) const Uses PyType_Check

    Class Int

    Class Int, derived publically from Object, corresponds to Python ints. Note that the latter correspond to C long ints. Class Int has an implicit user-defined conversion to long int. All constructors, on the other hand, are explicit. The default constructor creates a Python int zero.

    Table 3: class Int

    Returns Name and Signature Comments
    explicit Int (PyObject *pyob, bool owned= false, bool owned = false) Constructor
    explicit Int (const Int& ob) Constructor
    explicit Int (long v = 0L) Construct from long
    explicit Int (int v) Contruct from int
    explicit Int (const Object& ob) Copycons
    Int& operator= (const Object& rhs) Assignment
    Int& operator= (PyObject* rhsp) Assignment
    virtual bool   (PyObject *pyob) const Based on PyInt_Check
    long operator long() const Implicit conversion to long int
    Int& operator= (int v) Assign from int
    Int& operator= (long v) Assign from long

    Class Long

    Class Long, derived publically from Object, corresponds to Python type long. In Python, a long is an integer type of unlimited size, and is usually used for applications such as cryptography, not as a normal integer. Implicit conversions to both double and long are provided, although the latter may of course fail if the number is actually too big. All constructors are explicit. The default constructor produces a Python long zero.

    Table 4: Class Long

    Returns Name and Signature Comments
    explicit Long (PyObject *pyob, bool owned = false) Constructor
    explicit Long (const Int& ob) Constructor
    explicit Long (long v = 0L) Construct from long
    explicit Long (int v) Contruct from int
    explicit Long (const Object& ob) Copycons
    Long& operator= (const Object& rhs) Assignment
    Long& operator= (PyObject* rhsp) Assignment
    virtual bool (PyObject *pyob) const Based on PyLong_Check
    double operator double() const Implicit conversion to double
    long operator long() const Implicit conversion to long
    Long& operator= (int v) Assign from int
    Long& operator= (long v) Assign from long

    Class Float

    Class Float corresponds to Python floats, which in turn correspond to C double. The default constructor produces the Python float 0.0.

    Table 5: Class Float

    Returns Name and Signature Comments
    explicit Float (PyObject *pyob, bool owned = false) Constructor
    Float (const Float& f)   Construct from float
    explicit Float (double v=0.0) Construct from double
    explicit Float (const Object& ob) Copycons
    Float& operator= (const Object& rhs) Assignment
    Float& operator= (PyObject* rhsp) Assignment
    virtual bool accepts (PyObject *pyob) const Based on PyFloat_Check
    double operator double () const Implicit conversion to double
    Float& operator= (double v) Assign from double
    Float& operator= (int v) Assign from int
    Float& operator= (long v) Assign from long
    Float& operator= (const Int& iob) Assign from Int

    Sequences

    PyCXX implements a quite sophisticated wrapper class for Python sequences. While every effort has been made to disguise the sophistication, it may pop up in the form of obscure compiler error messages, so in this documentation we will first detail normal usage and then discuss what is under the hood.

    The basic idea is that we would like the subscript operator [] to work properly, and to be able to use STL-style iterators and STL algorithms across the elements of the sequence.

    Sequences are implemented in terms of a templated base class, SeqBase<T>. The parameter T is the answer to the question, sequence of what? For Lists, for example, T is Object, because the most specific thing we know about an element of a List is simply that it is an Object. (Class List is defined below; it is a descendent of Object that holds a pointer to a Python list). For strings, T is Char, which is a wrapper in turn of Python strings whose length is one.

    For convenience, the word Sequence is a typedef of SeqBase<Object>.

    General sequences

    Suppose you are writing an extension module method that expects the first argument to be any kind of Python sequence, and you wish to return the length of that sequence. You might write:

    static PyObject*
    my_module_seqlen (PyObject* args) {
    try
        {
        Tuple t(args);       // set up a Tuple pointing to the arguments.
        if(t.length() != 1) 
             throw PyException("Incorrect number of arguments to seqlen.");
        Sequence s = t[0];   // get argument and be sure it is a sequence
        return new_reference_to(Int(s.length()));
        }
    catch(const PyException&)
        {
        return Py_Null;
        }
    }

    As we will explain later, the try/catch structure converts any errors, such as the first argument not being a sequence, into a Python exception.

    Subscripting

    When a sequence is subscripted, the value returned is a special kind of object which serves as a proxy object. The general idea of proxy objects is discussed in Scott Meyers' book, "More Effective C++". Proxy objects are necessary because when one subscripts a sequence it is not clear whether the value is to be used or the location assigned to. Our proxy object is even more complicated than normal because a sequence reference such as s[i] is not a direct reference to the i'th object of s.

    In normal use, you are not supposed to notice this magic going on behind your back. You write:

    Object t;
    Sequence s;
    s[2] = t + s[1]

    and here is what happens: s[1] returns a proxy object. Since there is no addition operator in Object that takes a proxy as an argument, the compiler decides to invoke an automatic conversion of the proxy to an Object, which returns the desired component of s. The addition takes place, and then there is an assignment operator in the proxy class created by the s[2], and that assignment operator stuffs the result into the 2 component of s.

    It is possible to fool this mechanism and end up with a compiler failing to admit that a s[i] is an Object. If that happens, you can work around it by writing Object(s[i]), which makes the desired implicit conversion, explicit.

    Iterators

    Each sequence class provides the following interface. The class seqref<T> is the proxy class. We omit the details of the iterator, const_iterator, and seqref<T> here. See CXX/Objects.hxx if necessary. The purpose of most of this interface is to satisfy requirements of the STL.

    The SeqBase<T> Interface

    SeqBase<T> inherits from Object.

    Type Name
    typedef int size_type
    typedef seqref<T> reference
    typedef T const_reference
    typedef seqref<T>* pointer
    typedef int difference_type
    virtual size_type max_size() const
    virtual size_type capacity() const;
    virtual void swap(SeqBase<T>& c);
    virtual size_type size () const;
    explicit SeqBase<T> ();
    explicit SeqBase<T> (PyObject* pyob, bool owned = false);
    explicit SeqBase<T> (const Object& ob);
    SeqBase<T>& operator= (const Object& rhs);
    SeqBase<T>& operator= (PyObject* rhsp);
    virtual bool accepts (PyObject *pyob) const;
    size_type length () const ;
    const T operator[](size_type index) const;
    seqref<T> operator[](size_type index);
    virtual T getItem (size_type i) const;
    virtual void setItem (size_type i, const T& ob);
    SeqBase<T> repeat (int count) const;
    SeqBase<T> concat (const SeqBase<T>& other) const ;
    const T front () const;
    seqref<T> front();
    const T back () const;
    seqref<T> back();
    void verify_length(size_type required_size);
    void verify_length(size_type min_size, size_type max_size);
    class iterator;
    iterator begin ();
    iterator end ();
    class const_iterator;
    const_iterator begin () const;
    const_iterator end () const;

    Any heir of class Object that has a sequence behavior should inherit from class SeqBase<T>, where T is specified as the type of object that represents the individual elements of the sequence. The requirements on T are that it has a constructor that takes a PyObject* as an argument, that it has a default constructor, a copy constructor, and an assignment operator. In short, any properly defined heir of Object will work.

    Classes Char and String

    Python strings are unusual in that they are immutable sequences of characters. However, there is no character type per se; rather, when subscripted strings return a string of length one. To simulate this, we define two classes Char and String. The Char class represents a Python string object of length one. The String class represents a Python string, and its elements make up a sequence of Char's.

    The user interface for Char is limited. Unlike String, for example, it is not a sequence.

    The Char interface

    Char inherits from Object.

    Type Name
    explicit Char (PyObject *pyob, bool owned = false)
    Char (const Object& ob)
    Char (const std::string& v = "")
    Char (char v)
    Char (Py_UNICODE v)
    Char& operator= (const std::string& v)
    Char& operator= (char v)
    Char& operator= (Py_UNICODE v)
    Char& operator= (std::basic_string v)
    operator String() const
    operator std::string () const

    The String Interface

    String inherits from SeqBase<Char>.

    Type Name
    explicit String (PyObject *pyob, bool owned = false)
    String (const Object& ob)
    String (const std::string& v = "")
    String (const std::string& v, const char *encoding, const char *error="strict")
    String (const char *s, const char *encoding, const char *error="strict")
    String (const char *s, int len, const char *encoding, const char *error="strict")
    String (const std::string& v, std::string::size_type vsize)
    String (const char* v)
    String& operator= (const std::string& v)
    std::string operator std::string () const
    String encode( const char *encoding, const char *error="strict" )
    String decode( const char *encoding, const char *error="strict" )
    std::string as_std_string() const
    unicodestring as_unicodestring() const

    Class Tuple

    Class Tuple represents Python tuples. A Tuple is a Sequence. There are two kinds of constructors: one takes a PyObject* as usual, the other takes an integer number as an argument and returns a Tuple of that length, each component initialized to Py_None. The default constructor produces an empty Tuple.

    Tuples are not immutable, but attempts to assign to their components will fail if the reference count is not 1. That is, it is safe to set the elements of a Tuple you have just made, but not thereafter.

    Example: create a Tuple containing (1, 2, 4)

    Tuple t(3)
    t[0] = Int(1)
    t[1] = Int(2)
    t[2] = Int(4)

    Example: create a Tuple from a list:

    Dict d
    ...
    Tuple t(d.keys())

    The Tuple Interface

    Tuple inherits from Sequence.. Special run-time checks prevent modification if the reference count is greater than one.

    Type Name Comment
    virtual void setItem (int offset, const Object&ob) setItem is overridden to handle tuples properly.
    explicit Tuple (PyObject *pyob, bool owned = false)
    Tuple (const Object& ob)
    explicit Tuple (int size = 0) Create a tuple of the given size. Items initialize to Py_None. Default is an empty tuple.
    explicit Tuple (const Sequence& s) Create a tuple from any sequence.
    Tuple& operator= (const Object& rhs)
    Tuple& operator= (PyObject* rhsp)
    Tuple getSlice (int i, int j) const Equivalent to python's t[i:j]

    Class List

    Class List represents a Python list, and the methods available faithfully reproduce the Python API for lists. A List is a Sequence.

    The List Interface

    List inherits from Sequence.

    Type Name Comment
    explicit List (PyObject *pyob, bool owned = false)
    List (const Object& ob)
    List (int size = 0) Create a list of the given size. Items initialized to Py_None. Default is an empty list.
    List (const Sequence& s) Create a list from any sequence.
    List& operator= (const Object& rhs)
    List& operator= (PyObject* rhsp)
    List getSlice (int i, int j) const
    void setSlice (int i, int j, const Object& v)
    void append (const Object& ob)
    void insert (int i, const Object& ob)
    void sort () Sorts the list in place, using Python's member function. You can also use the STL sort function on any List instance.
    void reverse () Reverses the list in place, using Python's member function.

    Mappings

    A class MapBase<T> is used as the base class for Python objects with a mapping behavior. The key behavior of this class is the ability to set and use items by subscripting with strings. A proxy class mapref<T> is defined to produce the correct behavior for both use and assignment.

    For convenience, Mapping is a typedef for MapBase<Object>.

    The MapBase<T> interface

    MapBase<T> inherits from Object. T should be chosen to reflect the kind of element returned by the mapping.

    Type Name Comment
    T operator[](const std::string& key) const
    mapref<T> operator[](const std::string& key)
    int length () const Number of entries.
    int hasKey (const std::string& s) const Is m[s] defined?
    T getItem (const std::string& s) const m[s]
    virtual void setItem (const std::string& s, const Object& ob) m[s] = ob
    void delItem (const std::string& s) del m[s]
    void delItem (const Object& s)
    List keys () const A list of the keys.
    List values () const A list of the values.
    List items () const Each item is a key-value pair.

    Class Dict

    Class Dict represents Python dictionarys. A Dict is a Mapping. Assignment to subscripts can be used to set the components.

    Dict d
    d["Paul Dubois"] = "(925)-422-5426"

    Interface for Class Dict

    Dict inherits from MapBase<Object>.

    Type Name Comment
    explicit Dict (PyObject *pyob, bool owned = false)
    Dict (const Dict& ob)
    Dict () Creates an empty dictionary
    Dict& operator= (const Object& rhs)
    Dict& operator= (PyObject* rhsp)

    Other classes and facilities.

    Class Callable provides an interface to those Python objects that support a call method. Class Module holds a pointer to a module. If you want to create an extension module, however, see the extension facility. There is a large set of numeric operators.

    Interface to class Callable

    Type Name Comment
    explicit Callable (PyObject *pyob, bool owned = false)
    Callable& operator= (const Object& rhs)
    Callable& operator= (PyObject* rhsp)
    Object apply(const Tuple& args) const Call the object with the given arguments
    Object apply(PyObject* pargs = 0) const Call the object with args as the arguments. Checks that pargs is a tuple.

    Interface to class Module

    Type Name Comment
    explicit Module (PyObject* pyob, bool owned = false)
    explicit Module (const std::string name) Construct from name of module; does the import if needed.
    Module (const Module& ob) Copy constructor
    Module& operator= (const Object& rhs) Assignment
    Module& operator= (PyObject* rhsp) Assignment

    Numeric interface

    Unary operators for plus and minus, and binary operators +, -, *, /, and % are defined for pairs of objects and for objects with scalar integers or doubles (in either order). Functions abs(ob) and coerce(o1, o2) are also defined.

    The signature for coerce is:

    inline std::pair<Object,Object> coerce(const Object& a, const Object& b)

    Unlike the C API function, this simply returns the pair after coercion.

    Stream I/O

    Any object can be printed using stream I/O, using std::ostream& operator<< (std::ostream& os, const Object& ob). The object's str() representation is converted to a standard string which is passed to std::ostream& operator<< (std::ostream& os, const std::string&).

    Exceptions

    The Python exception facility and the C++ exception facility can be merged via the use of try/catch blocks in the bodies of extension objects and module functions.

    Class Exception and its children

    A set of classes is provided. Each is derived from class Exception, and represents a particular sort of Python exception, such as IndexError, RuntimeError, ValueError. Each of them (other than Exception) has a constructor which takes an explanatory string as an argument, and is used in a throw statement such as:

    throw IndexError("Index too large in MyObject access.");

    If in using a routine from the Python API, you discover that it has returned a NULL indicating an error, then Python has already set the error message. In that case you merely throw Exception.

    List of Exceptions

    The exception hierarchy mirrors the Python exception hierarchy. The concrete exception classes are shown here.

    Type Interface for class Exception
    explicit Exception()
    Exception (const std::string& reason)
    Exception (PyObject* exception, const std::string& reason)
    void clear()
    Constructors for other children of class Exception
    TypeError (const std::string& reason)
    IndexError (const std::string& reason)
    AttributeError (const std::string& reason)
    NameError (const std::string& reason)
    RuntimeError (const std::string& reason)
    SystemError (const std::string& reason)
    KeyError (const std::string& reason)
    ValueError (const std::string& reason)
    OverflowError (const std::string& reason)
    ZeroDivisionError (const std::string& reason)
    MemoryError (const std::string& reason)
    SystemExit (const std::string& reason)

    Using Exceptions in extension methods

    The exception facility allows you to integrate the C++ and Python exception mechanisms. To do this, you must use the style described below when writing module methods in the old C style.

    Note: If using the ExtensionModule or PythonExtension mechanisms described below, the method handlers include exception handling so that you only need to use exceptions explicitly in unusual cases.

    Catching Exceptions from the Python API or PyCXX.

    When writing an extension module method, you can use the following boilerplate. Any exceptions caused by the Python API or PyCXX itself will be converted into a Python exception. Note that Exception is the most general of the exceptions listed above, and therefore this one catch clause will serve to catch all of them. You may wish to catch other exceptions, not in the Exception family, in the same way. If so, you need to make sure you set the error in Python before returning.

    static PyObject *
    some_module_method(PyObject* args)
    {
        Tuple a( args ); // we know args is a Tuple
        try
        {
            ...calculate something from a...
            return ...something, usually of the form new_reference_to(some Object);
        }
        catch( const Exception& )
        {
            //Exception caught, passing it on to Python
            return None();
        }
    }
    

    How to clear an Exception

    If you anticipate that an Exception may be thrown and wish to recover from it, change the catch phrase to set a reference to an Exception, and use the method clear() from class Exception to clear it.:

    catch( Exception& e )
    {
        e.clear();
        ...now decide what to do about it...
    }
    

    Extension Facilities

    CXX/Extensions.hxx provides facilities for:

    • Creating a Python extension module
    • Creating new Python extension types

    These facilities use CXX/Objects.hxx and its support file cxxsupport.cxx.

    If you use CXX/Extensions.hxx you must also include source files cxxextensions.c and cxx_extensions.cxx

    Creating an Python extension module

    The usual method of creating a Python extension module is to declare and initialize its method table in C. This requires knowledge of the correct form for the table and the order in which entries are to be made into it, and requires casts to get everything to compile without warning. The PyCXX header file CXX/Extensions.h offers a simpler method. Here is a sample usage, in which a module named "example" is created. Note that two details are necessary:

    • The initialization function must be declared to have external C linkage and to have the expected name. This is a requirement imposed by Python
    • The ExtensionModule object must have a storage class that survives the call to the initialization function. This is most easily accomplished by using a static local inside the initialization function, as in initexample below.

    To create an extension module, you inherit from class ExtensionModule templated on yourself: In the constructor, you make calls to register methods of this class with Python as extension module methods. In this example, two methods are added (this is a simplified form of the example in Demo/example.cxx):

    class example_module : public ExtensionModule<example_module>
    {
    public:
        example_module()
        : ExtensionModule<example_module>( "example" )
        {
            add_varargs_method("sum", &example_module::ex_sum, "sum(arglist) = sum of arguments");
            add_varargs_method("test", &example_module::ex_test, "test(arglist) runs a test suite");
    
            initialize( "documentation for the example module" );
        }
    
        virtual ~example_module() {}
    
    private:
        Object ex_sum(const Tuple &a) { ... }
        Object ex_test(const Tuple &a) { ... }
    };
    

    To initialize the extension, you just instantiate one static instance (static so it does not destroy itself!):

    void initexample()
    {
        static example_module* example = new example_module;
    }

    The methods can be written to take Tuples as arguments and return Objects. If exceptions occur they are trapped for you and a Python exception is generated. So, for example, the implementation of ex_sum might be:

    Object ex_sum (const Tuple &a)
    {
        Float f(0.0);
        for( int i = 0; i < a.length(); i++ )
        {
            Float g(a[i]);
            f = f + g;
        }
        return f;
    }

    class ExtensionModule contains methods to return itself as a Module object, or to return its dictionary.

    Interface to class ExtensionModule

    Type Name Comment
    explicit ExtensionModule (char* name) Create an extension module named "name"
    virtual ~ExtensionModule () Destructor
    Dict moduleDictionary() const Returns the module dictionary; module must be initialized.
    Module module() const This module as a Module.
    void add_varargs_method (char *name, method_varargs_function_t method, char *documentation="") Add a method to the module.
    void add_keyword_method (char *name, method_keyword_function_t method, char *documentation="" Add a method that takes keywords
    void initialize() (protected, call from constructor) Initialize the module once all methods have been added.

    The signatures above are:

    typedef Object (T::*method_varargs_function_t)( const Tuple &args );
    typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws
    );

    That is, the methods take a Tuple or a Tuple and a Dict, and return an Object. The example below has an & in front of the name of the method; we found one compiler that needed this.

    Creating a Python extension type

    One of the great things about Python is the way you can create your own object types and have Python welcome them as first-class citizens. Unfortunately, part of the way you have to do this is not great. Key to the process is the creation of a Python "type object". All instances of this type must share a reference to this one unique type object. The type object itself has a multitude of "slots" into which the addresses of functions can be added in order to give the object the desired behavior.

    Creating extension objects is of course harder since you must specify how the object behaves and give it methods. This is shown in some detail in the example range.h and range.cxx, with the test routine rangetest.cxx, in directory Demo. If you have never created a Python extension before, you should read the Extension manual first and be very familiar with Python's "special class methods". Then what follows will make more sense.

    The basic idea is to inherit from PythonExtension templated on your self

    class MyObject: public PythonExtension<MyObject> {...}

    As a consequence:

    • MyObject is a child of PyObject, so that a MyObject* is-a PyObject*.
    • A static method check(PyObject*) is created in class MyObject. This function returns a boolean, testing whether or not the argument is in fact a pointer to an instance of MyObject.
    • The user can connect methods of MyObject to Python so that they are methods on MyObject objects. Each such method has the signature:
      Object method_name (const Tuple& args).
    • The user can override virtual methods of PythonExtension in order to set behaviors.
    • A method is created to handle the deletion of an instance if and when its reference count goes to zero. This method ensures the calling of the class destructor ~MyObject(), if any, and releases the memory (see below).
    • Both automatic and heap-based instances of MyObject can be created.

    Sample usage of PythonExtension

    Here is a brief overview. You create a class that inherits from PythonExtension templated upon itself. You override various methods from PythonExtension to implement behaviors, such as getattr, sequence_item, etc. You can also add methods to the object that are usable from Python using a similar scheme as for module methods above.

    One of the consequences of inheriting from PythonExtension is that you are inheriting from PyObject itself. So your class is-a PyObject and instances of it can be passed to the Python C API. Note: this example uses the namespace feature of PyCXX.

    Hint: You can avoid needing to specify the Py:: prefix if you include the C++ statement using Py; at the top of your files.

    class range: public Py::PythonExtension<range>
    {
    public:
        ... constructors, data, etc.
        ... methods not callable from Python
        // initializer, see below
        static void init_type();
        // override functions from PythonExtension
        virtual Py::Object repr();
        virtual Py::Object getattr( const char *name );
    
        virtual int sequence_length();
        virtual Py::Object sequence_item( int i );
        virtual Py::Object sequence_concat( const Py::Object &j );
        virtual Py::Object sequence_slice( int i, int j );
    
        // define python methods of this object
        Py::Object amethod (const Py::Tuple& args);
        Py::Object value (const Py::Tuple& args);
        Py::Object assign (const Py::Tuple& args); 
    };

    To initialize the type we provide a static method that we can call from some module's initializer. We set the name, doc string, and indicate which behaviors range objects support. Then we adds the methods.

    void range::init_type()
    {
        behaviors().name("range");
        behaviors().doc("range objects: start, stop, step");
        behaviors().supportRepr();
        behaviors().supportGetattr();
        behaviors().supportSequenceType();
    
        add_varargs_method("amethod", &range::amethod,
            "demonstrate how to document amethod");
        add_varargs_method("assign", &range::assign);
        add_varargs_method("value", &range::value);
    
        behaviors().readyType();
    }

    Do not forget to add the call range::init_type() to some module's init function. You will want a method in some module that can create range objects, too.

    Interface to PythonExtension <T>

    Your extension class T inherits PythonExtension<T>.

    Type Name Comment
    virtual ~PythonExtension<T>() Destructor
    PyTypeObject* type_object() const Returns the object type object.
    int check (PyObject* p) Is p a T?
    Protected
    void add_varargs_method (char *name, method_keyword_function_t method, char *documentation="" Add a method that takes arguments
    void add_keyword_method (char *name, method_keyword_function_t method, char *documentation="" Add a method that takes keywords
    static PythonType& behaviors() The type object
    void initialize() (protected, call from constructor) Initialize the module once all methods have been added.

    As before the signatures for the methods are Object mymethod(const Tuple& args) and Object mykeywordmethod (const Tuple& args, const Dict& keys). In this case, the methods must be methods of T.

    To set the behaviors of the object you override some or all of these methods from PythonExtension<T>:

    virtual int print( FILE *, int );
    virtual Object getattr( const char * );
    virtual int setattr( const char *, const Object & );
    virtual Object getattro( const Object & );
    virtual int setattro( const Object &, const Object & );
    virtual int compare( const Object & );
    virtual int rich_compare( const Object &, int op );
    virtual Object repr();
    virtual Object str();
    virtual long hash();
    virtual Object call( const Object &, const Object & );
    
    // Sequence methods
    virtual int sequence_length();
    virtual Object sequence_concat( const Object & );
    virtual Object sequence_repeat( int );
    virtual Object sequence_item( int );
    virtual Object sequence_slice( int, int );
    virtual int sequence_ass_item( int, const Object & );
    virtual int sequence_ass_slice( int, int, const Object & );
    
    // Mapping
    virtual int mapping_length();
    virtual Object mapping_subscript( const Object & );
    virtual int mapping_ass_subscript( const Object &, const Object & );
    
    // Number
    virtual int number_nonzero();
    virtual Object number_negative();
    virtual Object number_positive();
    virtual Object number_absolute();
    virtual Object number_invert();
    virtual Object number_int();
    virtual Object number_float();
    virtual Object number_long();
    virtual Object number_oct();
    virtual Object number_hex();
    virtual Object number_add( const Object & );
    virtual Object number_subtract( const Object & );
    virtual Object number_multiply( const Object & );
    virtual Object number_divide( const Object & );
    virtual Object number_remainder( const Object & );
    virtual Object number_divmod( const Object & );
    virtual Object number_lshift( const Object & );
    virtual Object number_rshift( const Object & );
    virtual Object number_and( const Object & );
    virtual Object number_xor( const Object & );
    virtual Object number_or( const Object & );
    virtual Object number_power( const Object &, const Object & );
    
    // Buffer
    virtual int buffer_getreadbuffer( int, void** );
    virtual int buffer_getwritebuffer( int, void** );
    virtual int buffer_getsegcount( int* );

    Note that dealloc is not one of the functions you can override. That is what your destructor is for. As noted below, dealloc behavior is provided for you by PythonExtension.

    Type initialization

    To initialize your type, supply a static public member function that can be called from the extension module. In that function, obtain the PythonType object by calling behaviors() and apply appropriate "support" methods from PythonType to turn on the support for that behavior or set of behaviors.

    void supportPrint(void);
    void supportGetattr(void);
    void supportSetattr(void);
    void supportGetattro(void);
    void supportSetattro(void);
    void supportCompare(void);
    void supportRichCompare(void);
    void supportRepr(void);
    void supportStr(void);
    void supportHash(void);
    void supportCall(void);
    
    void supportSequenceType( bool support_assignment=true, bool support_inplace=false, bool support_contains=false );
    void supportMappingType( bool support_assignment=true );
    void supportNumberType(void);
    void supportBufferType(void);

    Then call add_varargs_method or add_keyword_method to add any methods desired to the object.

    Notes on memory management and extension objects

    Normal Python objects exist only on the heap. That is unfortunate, as object creation and destruction can be relatively expensive. Class PythonExtension allows creation of both local and heap-based objects.

    If an extension object is created using operator new, as in:

    range* my_r_ref = new range(1, 20, 3)

    then the entity my_r_ref can be thought of as "owning" the reference created in the new object. Thus, the object will never have a reference count of zero. If the creator wishes to delete this object, they should either make sure the reference count is 1 and then do delete my_r_ref, or decrement the reference with Py_DECREF(my_r_ref).

    Should my_r_ref give up ownership by being used in an Object constructor, all will still be well. When the Object goes out of scope its destructor will be called, and that will decrement the reference count, which in turn will trigger the special dealloc routine that calls the destructor and deletes the pointer.

    If the object is created with automatic scope, as in:

    range my_r(1, 20, 3)

    then my_r can be thought of as owning the reference, and when my_r goes out of scope the object will be destroyed. Of course, care must be taken not to have kept any permanent reference to this object. Fortunately, in the case of an exception, the C++ exception facility will call the destructor of my_r. Naturally, care must be taken not to end up with a dangling reference, but such objects can be created and destroyed more efficiently than heap-based PyObjects.

    Putting it all together

    The Demo directory of the distribution contains an extensive example of how to use many of the facilities in PyCXX. It also serves as a test routine. This test is not completely exhaustive but does excercise much of the facility.

    pysvn-1.9.22/Import/pycxx-7.1.9/Doc/Python3/make_contents.py000644 000765 000024 00000002626 12740671067 023642 0ustar00barrystaff000000 000000 #!/usr/bin/python3 import sys all_lines = open( 'PyCXX.html' ).readlines() all_contents = [] for line in all_lines: if( line.startswith( '

    ' ) nested = False indent = '' cls = 'contents_h1' for line in all_contents: tag = line[0:len('

    ')] contents = line[len('

    PyCXX: Writing Python Extensions in C++

    Writing Python Extensions in C++ with PyCXX

    Contents

    Acknowledgments

    Thank you to Geoffrey Furnish for patiently teaching me the finer points of C++ and its template facility, and his critique of PyCXX in particular. With version 4 I welcome Barry Scott as co-author. -- Paul Dubois

    Paul is no longer contributing to PyCXX. Thanks for all your great work on PyCXX Paul. -- Barry Scott.

    Overview

    PyCXX is designed to make it easier to extend Python with C++

    PyCXX Version 6.1 and later supports both Python 2 and Python 3.

    PyCXX Version 7.1 and later support the Python 3 limited API (PEP-384).

    PyCXX is a set of C++ facilities to make it easier to write Python extensions. The chief way in which PyCXX makes it easier to write Python extensions is that it greatly increases the probability that your program will not make a reference-counting error and will not have to continually check error returns from the Python C API. PyCXX integrates Python with C++ in these ways:

    • C++ exception handling is relied on to detect errors and clean up. In a complicated function this is often a tremendous problem when writing in C. With PyCXX, we let the compiler keep track of what objects need to be dereferenced when an error occurs.
    • The Standard Template Library (STL) and its many algorithms plug and play with Python containers such as lists and tuples.
    • The optional CXX/Extensions.hxx facility allows you to replace the clumsy C tables with objects and method calls that define your modules and extension objects.

    Download and Installation

    Download PyCXX from http://sourceforge.net/projects/cxx/.

    The distribution layout is:

    DirectoryDescription
    .Makefile for Unix and Windows, Release documentation
    ./CXXHeader files
    ./SrcSource files
    ./DocDocumentation
    ./DemoTesting and Demonstartion files

    To use PyCXX you use its include files and add its source routines to your module.

    Installation:

    • Install the PyCXX files into a directory of your choice. For example:
      Windows: C:\PyCXX
      Unix: /usr/local/PyCXX
    • Tell your compiler where the PyCXX header files are:
      Windows: cl /I=C:\PyCXX ...
      Unix: g++ -I/usr/local/PyCXX ...
    • Include PyCXX headers files in your code using the CXX prefix:
      #include "CXX/Objects.hxx"

    The header file CXX/config.h may need to be adjusted for the compiler you use. As of this writing, only a fairly obscure reference to part of the standard library needs this adjustment. Unlike prior releases, PyCXX now assumes namespace support and a standard C++ library.

    Example code

    The Demo directory of the distribution contains examples of how to use many of the facilities in PyCXX.

    In the top level folder of the PyCXX distributions are a number of makefiles that can be used to build and run the example code.

    For example on Linux example_linux_py30.mak will build and run the example code.

    make -f example_linux_py30.mak clean test
    SourceDescription
    Demo/test_simple.py, Demo/simple.cxxThe simplest code needed to create a module and classes in C++.
    Demo/test_example.py, Demo/example.cxxThe original PyCXX example code. It is now the main test suite for PyCXX.
    Demo/range.hxx, Demo/range.cxxImpliments the range object use by example.cxx.

    PyCXX - Supporting Python 3 limited API (PEP-384)

    Starting with Python 3.4 and PyCXX 7.1.0 it is possible to create extensions that use the Python limited API. (It was not possible to support Python 3.3)

    Choose the oldest version of python that you want support and the binary extension will run in that version and all the newer versions.

    Define Py_LIMITED_API when compiling all your code and the PyCXX code.

    The value of Py_LIMITED_API is the first python version that you want to support.

    • Python 3.4 or later: Defined Py_LIMITED_API as 0x03040000
    • Python 3.5 or later: Defined Py_LIMITED_API as 0x03050000
    • etc.

    Note: Some of the PyCXX API cannot be supported in the Py_LIMITED_API mode. The header files only include classes and functions that can be supported.

    PyCXX - Supporting Python 2 and Python 3

    It is possible to have common code that can be compiled to work with Python 2 or Python 3.

    Define PYCXX_PYTHON_2TO3 to turn on the compatibility support. When compiling against Python 2 this means faking up the Python 3 API and when compiling against Python 3 faking the old Python 2 API.

    The changes from Python 2 to Python 3 that require code changes are:

    • string is unicode only in Python 3 - Py::String API changed to match python 3 usage
    • byte is for byte date in Python 3 - Py::Bytes added to PyCXX
    • int has been removed - Py::Int has been removed from PyCXX

    This means that you will need to:

    • Replace Py::Nothing with Py::None - required
    • Replace Py::Int with Py::Long - recommended
    • Replace Py::LongLong with Py::Long - recommended
    • Replace as_std_string() with as_std_string( "encoding" ) or as_std_string( NULL ) - required
    • Replace Py::String that holds non unicode data with Py::Bytes - required

    Use of namespaces

    All PyCXX assets are in namespace "Py". You need to include the Py:: prefix when referring to them, or include the statement:

    using namespace Py;

    Wrapper for standard objects: <CXX/Objects.hxx>

    Header file CXX/Objects.hxx requires adding file Src/cxxsupport.cxx and Src/IndirectPythonInterface.cxx to your module sources. CXX/Objects.hxx provides a set of wrapper classes that allow you access to most of the Python C API using a C++ notation that closely resembles Python. For example, this Python:

    d = {}
    d[ "a" ] = 1
    d[ "b" ] = 2
    alist = d.keys()
    print alist

    Can be written in C++:

    Py::Dict d;
    Py::List alist;
    d[ "a" ] = Py::Long( 1 );
    d[ "b" ] = Py::Long( 2 );
    alist = d.keys();
    std::cout << alist << std::endl;
    

    You can optionally use the CXX/Extensions.hxx facility described later to define Python extension modules and extension objects.

    We avoid programming with Python object pointers

    The essential idea is that we avoid, as much as possible, programming with pointers to Python objects, that is, variables of type PyObject *. Instead, we use instances of a family of C++ classes that represent the usual Python objects. This family is easily extendible to include new kinds of Python objects.

    For example, consider the case in which we wish to write a method, taking a single integer argument, that will create a Python dict and insert into it that the integer plus one under the key value. In C we might do that as follows:

    static PyObject *mymodule_addvalue( PyObject *args )
    {
        PyObject *d;
        PyObject *f;
        int k;
        PyArgs_ParseTuple( args, "i", &k );
        d = PyDict_New();
        if( !d )
            return NULL;
    
        f = PyInt_NEW( k+1 );
        if( !f )
        {
            Py_DECREF( d ); /* have to get rid of d first */
            return NULL;
        }
        if( PyDict_SetItemString( d, "value", f ) == -1 )
        {
            Py_DECREF( f );
            Py_DECREF( d );
            return NULL;
        }
    
        return d;
    }

    If you have written a significant Python extension, this tedium looks all too familiar. The vast bulk of the coding is error checking and cleanup. Now compare the same thing written in C++ using CXX/Objects.hxx. The things with Python-like names ( Long, Dict, Tuple ) are from CXX/Objects.hxx.

    static PyObject *mymodule_addvalue( PyObject *pargs )
    { 
        try
        {
            Tuple args( pargs ); 
            args.verify_length( 1 ); 
    
            Dict d; 
            Long k = args[0]; 
            d["value"] = k + 1;
    
            return new_reference_to( d ); 
        } 
        catch( const PyException & )
        { 
            return NULL;
        }
    }

    If there are not the right number of arguments or the argument is not an integer, an exception is thrown. In this case we choose to catch it and convert it into a Python exception. The C++ exception handling mechanism takes care all the cleanup.

    Note that the creation of the Long k got the first argument and verified that it is an Long.

    Just to peek ahead, if you wrote this method in an ExtensionModule-derived module of your own, it would be a method and it could be written as:

    Object addvalue( const Tuple &args )
    {
        args.verify_length( 1 );
        Dict d;
        Long k = args[0];
        d["value"] = k + 1;
        return d;
    }
    

    The basic concept is to wrap Python pointers

    The basic concept of CXX/Objects.hxx is to create a wrapper around each PyObject * so that the reference counting can be done automatically, thus eliminating the most frequent source of errors. In addition, we can then add methods and operators so that Python objects can be manipulated in C++ much like you would in Python.

    Each Object contains a PyObject * to which it owns a reference. When an Object is destroyed, it releases its ownership on the pointer. Since C++ calls the destructors on objects that are about to go out of scope, we are guaranteed that we will keep the reference counts right even if we unexpectedly leave a routine with an exception.

    As a matter of philosophy, CXX/Objects.hxx prevents the creation of instances of its classes unless the instance will be a valid instance of its class. When an attempt is made to create an object that will not be valid, an exception is thrown.

    Class Object represents the most general kind of Python object. The rest of the classes that represent Python objects inherit from it.

    Object
    Type
    Float
    Long
    Complex
    Char
    Sequence -> SeqBase<T>
        String
        Tuple
        List
    Mapping -> MapBase<T>
        Dict
    Callable
    Module

    There are several constructors for each of these classes. For example, you can create an Long from an integer as in

    Long s( 3 )

    However, you can also create an instance of one of these classes using any PyObject * or another Object. If the corresponding Python object does not actually have the type desired, an exception is thrown. This is accomplished as follows. Class Object defines a virtual function accepts:

    virtual bool accepts( PyObject *p )

    The base class version of accepts returns true for any pointer p except 0. This means we can create an Object using any PyObject *, or from any other Object. However, if we attempt to create an Long from a PyObject *, the overridding version of accepts in class Long will only accept pointers that correspond to Python ints. Therefore if we have a Tuple t and we wish to get the first element and be sure it is an Long, we do

    Long first_element = t[0]

    This will not only accomplish the goal of extracting the first element of the Tuple t, but it will ensure that the result is an Long. If not, an exception is thrown. The exception mechanism is discussed later.

    global methods

    global methods
    Returns Name( signature ) Comment
    ObjectasObject( PyObject *p )Convert an owned Python pointer into a PyCXX Object
    PyObject *Null()return (PyObject *)NULL
    PyObject *new_reference_to( PyObject *p )Increment the reference count of p
    PyObject *new_reference_to( const Object &g )Increment the reference count of g
    ObjectNone()Return the Python None opject
    ObjectTrue()Return the Python True opject
    ObjectFalse()Return the Python False opject

    Comparisons

    PyCXX implements a full set of comparison operators (==, !=, >=, >, < <=) for the PyCXX objects.

    BetweenAnd
    ObjectObject
    LongLong
    Longlong
    Longint
    LongPY_LONG_LONG
    FloatFloat
    Floatdouble
    SeqBasea<T>::iteratorSeqBase<T>::iterator
    SeqBase<T>::const_iteratorSeqBase<T>::const_iterator
    Sequence::iteratorSequence::iterator
    Sequence::const_iteratorSequence::const_iterator
    MapBase<T>::iteratorMapBase<T>::iterator
    MapBase<T>::const_iteratorMapBase<T>::const_iterator
    Mapping::iteratorMapping::iterator
    Mapping::const_iteratorMapping::const_iterator

    Class Object

    Class Object serves as the base class for the other classes. Its default constructor constructs a Py_None, the unique object of Python type None. The interface to Object consists of a large number of methods corresponding to the operations that are defined for every Python object. In each case, the methods throw an exception if anything goes wrong.

    There is no method corresponding to PyObject_SetItem with an arbitrary Python object as a key. Instead, create an instance of a more specific child of Object and use the appropriate facilities.

    The comparison operators use the Python comparison function to compare values. The method is is available to test for absolute identity.

    A conversion to standard library string type std::string is supplied using method as_string. Stream output of PyCXX Object instances uses this conversion, which in turn uses the Python object's str() representation.

    All the numeric operators are defined on all possible combinations of Object, long, and double. These use the corresponding Python operators, and should the operation fail for some reason, an exception is thrown.

    Dealing with pointers returned by the Python C API

    Often, PyObject * pointers are acquired from some function, particularly functions in the Python C API. If you wish to make an object from the pointer returned by such a function, you need to know if the function returns you an owned or unowned reference. Unowned references are unusual but there are some cases where unowned references are returned.

    Usually, Object and its children acquire a new reference when constructed from a PyObject *. This is usually not the right behavior if the reference comes from one of the Python C API calls.

    If p is an owned reference, you can add the boolean true as an extra argument in the creation routine, Object( p, true ), or use the function asObject( p ) which returns an Object created using the owned reference. For example, the routine PyString_FromString returns an owned reference to a Python string object. You could write:

    Object w = asObject( PyString_FromString( "my string" ) );

    or using the constructor,

    Object w( PyString_FromString( "my string" ), true );

    In fact, you would never do this, since PyCXX has a class String and you can just say:

    String w( "my string" );

    Indeed, since most of the Python C API is similarly embodied in Object and its descendents, you probably will not use asObject all that often.

    Class Object
    Returns Name( signature ) Comment
    Basic Methods
    explicit Object( PyObject *pyob=Py_None, bool owned=false ) Construct from pointer.
    explicit Object( const Object &ob ) Copycons; acquires an owned reference.
    Object & operator=( const Object &rhs ) Acquires an owned reference.
    Object & operator=( PyObject *rhsp ) Acquires an owned reference.
    virtual ~Object() Releases the reference.
    void increment_reference_count() Explicitly increment the count
    void decrement_reference_count() Explicitly decrement count but not to zero
    PyObject* operator*() const Lends the pointer
    PyObject* ptr() const Lends the pointer
    virtual bool accepts( PyObject *pyob ) const Would assignment of pyob to this object succeed?
    std::string as_string() const str() representation
    Python API Interface
    int reference_count() const reference count
    Type type() const associated type object
    String str() const str() representation
    String repr() const repr() representation
    bool hasAttr( const std::string &s ) const hasattr( this, s )
    Object getAttr( const std::string &s ) const getattr( this, s )
    Object getItem( const Object &key ) const getitem( this, key )
    long hashValue() const hash( this )
    void setAttr( const std::string &s,
    const Object &value )
    this.s = value
    void delAttr( const std::string &s ) del this.s
    void delItem( const Object &key ) del this[key]
    bool isCallable() const does this have callable behavior?
    bool isList() const is this a Python list?
    bool isMapping() const does this have mapping behaviors?
    bool isNumeric() const does this have numeric behaviors?
    bool isSequence() const does this have sequence behaviors?
    bool isTrue() const is this true in the Python sense?
    bool isType( const Type &t ) const is type( this ) == t?
    bool isTuple() const is this a Python tuple?
    bool isString() const is this a Python string?
    bool isUnicode() const is this a Python Unicode string?
    bool isDict() const is this a Python dictionary?
    Comparison Operators
    bool is( PyObject *pother ) const test for identity
    bool is( const Object &other ) const test for identity
    bool operator==( const Object &o2 ) const Comparisons use Python rich compare
    bool operator!=( const Object &o2 ) const Comparisons use Python rich compare
    bool operator>=( const Object &o2 ) const Comparisons use Python rich compare
    bool operator<=( const Object &o2 ) const Comparisons use Python rich compare
    bool operator<( const Object &o2 ) const Comparisons use Python rich compare
    bool operator>( const Object &o2 ) const Comparisons use Python rich compare

    The Basic Types

    Corresponding to each of the basic Python types is a class that inherits from Object. Here are the interfaces for those types. Each of them inherits from Object and therefore has all of the inherited methods listed for Object. Where a virtual function is overridden in a class, the name is underlined.

    Class Type

    Class Type corresponds to Python type objects. There is no default constructor.

    class Type
    Returns Name and Signature Comments
    explicit Type( PyObject *pyob, bool owned = false ) Constructor
    explicit Type( const Object &ob ) Constructor
    explicit Type( const Type &t ) Copycons
    Type& operator=( const Object &rhs ) Assignment
    Type& operator=( PyObject *rhsp ) Assignment
    virtual bool accepts( PyObject *pyob ) const Uses PyType_Check

    Class Long

    Class Long, derived publically from Object, corresponds to Python type long. In Python, a long is an integer type of unlimited size. Implicit conversions to both double and long are provided, although the latter may of course fail if the number is actually too big. All constructors are explicit. The default constructor produces a Python long zero.

    class Long
    Returns Name and Signature Comments
    explicit Long( PyObject *pyob, bool owned = false ) Constructor
    explicit Long( const Long &ob ) Constructor
    explicit Long( long v = 0L ) Construct from long
    explicit Long( int v ) Contruct from int
    explicit Long( const Object &ob ) Copycons
    Long & operator=( const Object &rhs ) Assignment
    Long & operator=( PyObject *rhsp ) Assignment
    virtual bool accepts( PyObject *pyob ) const Based on PyLong_Check
    double operator double() const Implicit conversion to double
    long operator long() const Implicit conversion to long
    Long & operator=( int v ) Assign from int
    Long & operator=( long v ) Assign from long

    Class Float

    Class Float corresponds to Python floats, which in turn correspond to C double. The default constructor produces the Python float 0.0.

    class Float
    Returns Name and Signature Comments
    explicit Float( PyObject *pyob, bool owned = false ) Constructor
    Float( const Float &f )   Construct from float
    explicit Float( double v=0.0 ) Construct from double
    explicit Float( const Object &ob ) Copycons
    Float& operator=( const Object &rhs ) Assignment
    Float& operator=( PyObject *rhsp ) Assignment
    virtual bool accepts( PyObject *pyob ) const Based on PyFloat_Check
    double operator double() const Implicit conversion to double
    Float & operator=( double v ) Assign from double
    Float & operator=( int v ) Assign from int
    Float & operator=( long v ) Assign from long
    Float & operator=( const Long &iob ) Assign from Long

    Sequences

    PyCXX implements a quite sophisticated wrapper class for Python sequences. While every effort has been made to disguise the sophistication, it may pop up in the form of obscure compiler error messages, so in this documentation we will first detail normal usage and then discuss what is under the hood.

    The basic idea is that we would like the subscript operator [] to work properly, and to be able to use STL-style iterators and STL algorithms across the elements of the sequence.

    Sequences are implemented in terms of a templated base class, SeqBase<T>. The parameter T is the answer to the question, sequence of what? For Lists, for example, T is Object, because the most specific thing we know about an element of a List is simply that it is an Object.( Class List is defined below; it is a descendent of Object that holds a pointer to a Python list ). For strings, T is Char, which is a wrapper in turn of Python strings whose length is one.

    For convenience, the word Sequence is a typedef of SeqBase<Object>.

    General sequences

    Suppose you are writing an extension module method that expects the first argument to be any kind of Python sequence, and you wish to return the length of that sequence. You might write:

    static PyObject*
    my_module_seqlen( PyObject *args ) {
    try
        {
        Tuple t( args );       // set up a Tuple pointing to the arguments.
        if( t.length() != 1 ) 
             throw PyException( "Incorrect number of arguments to seqlen." );
        Sequence s = t[0];   // get argument and be sure it is a sequence
        return new_reference_to( Long( s.length() ) );
        }
    catch( const PyException  &)
        {
        return Py_Null;
        }
    }

    As we will explain later, the try/catch structure converts any errors, such as the first argument not being a sequence, into a Python exception.

    Subscripting

    When a sequence is subscripted, the value returned is a special kind of object which serves as a proxy object. The general idea of proxy objects is discussed in Scott Meyers' book, "More Effective C++". Proxy objects are necessary because when one subscripts a sequence it is not clear whether the value is to be used or the location assigned to. Our proxy object is even more complicated than normal because a sequence reference such as s[i] is not a direct reference to the i'th object of s.

    In normal use, you are not supposed to notice this magic going on behind your back. You write:

    Object t;
    Sequence s;
    s[2] = t + s[1]

    and here is what happens: s[1] returns a proxy object. Since there is no addition operator in Object that takes a proxy as an argument, the compiler decides to invoke an automatic conversion of the proxy to an Object, which returns the desired component of s. The addition takes place, and then there is an assignment operator in the proxy class created by the s[2], and that assignment operator stuffs the result into the 2 component of s.

    It is possible to fool this mechanism and end up with a compiler failing to admit that a s[i] is an Object. If that happens, you can work around it by writing Object( s[i] ), which makes the desired implicit conversion, explicit.

    Iterators

    Each sequence class provides the following interface. The class seqref<T> is the proxy class. We omit the details of the iterator, const_iterator, and seqref<T> here. See CXX/Objects.hxx if necessary. The purpose of most of this interface is to satisfy requirements of the STL.

    The SeqBase<T> Interface

    SeqBase<T> inherits from Object.

    class SeqBase>T<
    Type Name
    typedef int size_type
    typedef seqref<T> reference
    typedef T const_reference
    typedef seqref<T>* pointer
    typedef int difference_type
    virtual size_type max_size() const
    virtual size_type capacity() const;
    virtual void swap( SeqBase<T> &c );
    virtual size_type size() const;
    explicit SeqBase<T>();
    explicit SeqBase<T>( PyObject *pyob, bool owned = false );
    explicit SeqBase<T>( const Object &ob );
    SeqBase<T> & operator=( const Object &rhs );
    SeqBase<T> & operator=( PyObject *rhsp );
    virtual bool accepts( PyObject *pyob ) const;
    size_type length() const ;
    const T operator[]( size_type index ) const;
    seqref<T> operator[]( size_type index );
    virtual T getItem( size_type i ) const;
    virtual void setItem( size_type i, const T &ob );
    SeqBase<T> repeat( int count ) const;
    SeqBase<T> concat( const SeqBase<T> &other ) const ;
    const T front() const;
    seqref<T> front();
    const T back() const;
    seqref<T> back();
    void verify_length( size_type required_size );
    void verify_length( size_type min_size, size_type max_size );
    class iterator;
    iterator begin();
    iterator end();
    class const_iterator;
    const_iterator begin() const;
    const_iterator end() const;

    Any heir of class Object that has a sequence behavior should inherit from class SeqBase<T>, where T is specified as the type of object that represents the individual elements of the sequence. The requirements on T are that it has a constructor that takes a PyObject *as an argument, that it has a default constructor, a copy constructor, and an assignment operator. In short, any properly defined heir of Object will work.

    Classes Char and String

    Python strings are unusual in that they are immutable sequences of characters. However, there is no character type per se; rather, when subscripted strings return a string of length one. To simulate this, we define two classes Char and String. The Char class represents a Python string object of length one. The String class represents a Python string, and its elements make up a sequence of Char's.

    The user interface for Char is limited. Unlike String, for example, it is not a sequence.

    The Char interface

    Char inherits from Object. Char holds a single Unicode character.

    unicodestring is a typedef for std::basic_string<Py_UNICODE>

    class Char
    Type Name
    explicit Char( PyObject *pyob, bool owned = false )
    Char( const Object &ob )
    Char( int v )
    Char( Py_UNICODE v )
    Char( const unicodestring &v )
    Char & operator=( const Object &o )
    Char & operator=( PyObject *p )
    Char & operator=( int v )
    Char & operator=( Py_UNICODE v )
    Char & operator=( unicodestring &v )
    operator String() const

    The String Interface

    String inherits from SeqBase<Char>. String holds a sequence of Unicode characters.

    The following is taken from Pythons's unicode.h.

    Many of these APIs take two arguments encoding and errors. These parameters encoding and errors have the same semantics as the ones of the builtin unicode() API.

    Setting encoding to NULL causes the default encoding to be used.

    Error handling is set by errors which may also be set to NULL meaning to use the default handling defined for the codec. Default error handling for all builtin codecs is "strict" (ValueErrors are raised).

    The codecs all use a similar interface. Only deviation from the generic ones are documented.

    class String
    Type Name
    explicit String( PyObject *pyob, bool owned = false )
    String( const Object &ob )
    String()
    String( const char *latin1 )
    String( const char *latin1, Py_ssize_t size )
    String( const std::string &latin1 )
    String( const std::string &v, const char *encoding, const char *error=NULL )
    String( const char *s, const char *encoding, const char *error=NULL )
    String( const char *s, Py_ssize_t len, const char *encoding, const char *error=NULL )
    String & operator=( const Object &o )
    String & operator=( PyObject *p )
    String & operator=( const unicodestring &v )
    size_type size() const
    size_type capacity() const
    unicodestring as_unicodestring() const
    std::string operator std::string() const
    String encode( const char *encoding, const char *error="strict" )
    std::string as_std_string( const char *encoding=NULL, const char *error="strict" ) const

    Classes Byte and Bytes

    Bytes corresponds to the Python type byte.

    The Byte interface

    Byte inherits from Object. Byte holds a single 8-bit byte of data.

    class Byte
    Type Name
    explicit Byte( PyObject *pyob, bool owned = false )
    Byte( const Object &ob )
    Byte( const std::string &v )
    Byte( char v )
    Byte & operator=( const Object &o )
    Byte & operator=( PyObject *p )
    Byte & operator=( const std::string &v )
    Byte & operator=( char v )
    operator Bytes() const

    The Bytes Interface

    Bytes inherits from SeqBase<Byte>. Bytes holds a sequence of 8-bit data.

    class Bytes
    Type Name
    explicit Bytes( PyObject *pyob, bool owned = false )
    Bytes( const Object &ob )
    Bytes()
    Bytes( const char *v )
    Bytes( const char *v, Py_ssize_t size )
    Bytes( const std::string &v )
    Bytes( const std::string &v, Py_ssize_t size )
    Bytes( const char *v )
    Bytes( const char *v, Py_ssize_t size )
    Bytes & operator=( const Object &o )
    Bytes & operator=( PyObject *p )
    Bytes & operator=( const std::string &v )
    size_type size() const
    size_type capacity() const
    String decode( const char *encoding, const char *error="strict" )
    std::string operator std::string() const
    Bytes encode( const char *encoding, const char *error="strict" )
    std::string as_std_string() const

    Class Tuple

    Class Tuple represents Python tuples. A Tuple is a Sequence. There are two kinds of constructors: one takes a PyObject *as usual, the other takes an integer number as an argument and returns a Tuple of that length, each component initialized to Py_None. The default constructor produces an empty Tuple.

    Tuples are not immutable, but attempts to assign to their components will fail if the reference count is not 1. That is, it is safe to set the elements of a Tuple you have just made, but not thereafter.

    Example: create a Tuple containing( 1, 2, 4 )

    Tuple t( 3 );
    t[0] = Long( 1 );
    t[1] = Long( 2 );
    t[2] = Long( 4 );

    Example: create a Tuple from a list:

    Dict d
    ...
    Tuple t( d.keys() )

    Tuple inherits from Sequence.. Special run-time checks prevent modification if the reference count is greater than one.

    class Tuple
    Type Name Comment
    virtual void setItem( int offset, const Object &ob ) setItem is overridden to handle tuples properly.
    explicit Tuple( PyObject *pyob, bool owned = false )
    Tuple( const Object &ob )
    explicit Tuple( int size = 0 ) Create a tuple of the given size. Items initialize to Py_None. Default is an empty tuple.
    explicit Tuple( const Sequence &s ) Create a tuple from any sequence.
    Tuple& operator=( const Object &rhs )
    Tuple& operator=( PyObject *rhsp )
    Tuple getSlice( int i, int j ) const Equivalent to python's t[i:j]

    Class TupleN

    Class TupleN is an easy way to make a Tuple of N items.

    Example: create a Tuple containing( 1, 2, 4 )

    TupleN t3( Long( 1 ), Long( 2 ), Long( 3 ) );
    

    Example: create a Tuple containing( "Hello", "World" )

    TupleN t2( String( "Hello" ), String( "Hello" ) );
    
    class TupleN
    Type Name Comment
      TupleN() Tuple of 0 elements
      TupleN( const Object &ob1 ) Tuple of 1 element
      TupleN( const Object &ob1, const Object &ob2 ) Tuple of 2 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3 ) Tuple of 3 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4 )
    Tuple of 4 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4, const Object &ob5 )
    Tuple of 5 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4, const Object &ob5, const Object &ob6 )
    Tuple of 6 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4, const Object &ob5, const Object &ob6,
            const Object &ob7 )
    Tuple of 7 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4, const Object &ob5, const Object &ob6,
            const Object &ob7, const Object &ob8 )
    Tuple of 8 elements
      TupleN( const Object &ob1, const Object &ob2, const Object &ob3,
            const Object &ob4, const Object &ob5, const Object &ob6,
            const Object &ob7, const Object &ob8, const Object &ob9 )
    Tuple of 9 elements

    Class List

    Class List represents a Python list, and the methods available faithfully reproduce the Python API for lists. A List is a Sequence.

    List inherits from Sequence.

    class List
    Type Name Comment
    explicit List( PyObject *pyob, bool owned = false )
    List( const Object &ob )
    List( int size = 0 ) Create a list of the given size. Items initialized to Py_None. Default is an empty list.
    List( const Sequence &s ) Create a list from any sequence.
    List& operator=( const Object &rhs )
    List& operator=( PyObject *rhsp )
    List getSlice( int i, int j ) const
    void setSlice( int i, int j, const Object &v )
    void append( const Object &ob )
    void insert( int i, const Object &ob )
    void sort() Sorts the list in place, using Python's member function. You can also use the STL sort function on any List instance.
    void reverse() Reverses the list in place, using Python's member function.

    Mappings

    A class MapBase<T> is used as the base class for Python objects with a mapping behavior. The key behavior of this class is the ability to set and use items by subscripting with strings. A proxy class mapref<T> is defined to produce the correct behavior for both use and assignment.

    For convenience, Mapping is a typedef for MapBase<Object>.

    The MapBase<T> interface

    MapBase<T> inherits from Object. T should be chosen to reflect the kind of element returned by the mapping.

    class MapBase<T>
    Type Name Comment
    T operator[]( const std::string &key ) const
    mapref<T> operator[]( const std::string &key )
    int length() const Number of entries.
    int hasKey( const std::string &s ) const Is m[s] defined?
    T getItem( const std::string &s ) const m[s]
    virtual void setItem( const std::string &s, const Object &ob ) m[s] = ob
    void delItem( const std::string &s ) del m[s]
    void delItem( const Object &s )
    List keys() const A list of the keys.
    List values() const A list of the values.
    List items() const Each item is a key-value pair.

    Class Dict

    Class Dict represents Python dictionarys. A Dict is a Mapping. Assignment to subscripts can be used to set the components.

    Dict d
    d["Paul Dubois"] = "( 925 )-422-5426"

    Dict inherits from MapBase<Object>.

    class Dict
    Type Name Comment
    explicit Dict( PyObject *pyob, bool owned = false )
    Dict( const Dict &ob )
    Dict() Creates an empty dictionary
    Dict& operator=( const Object &rhs )
    Dict& operator=( PyObject *rhsp )

    Clsss Callable.

    Class Callable provides an interface to those Python objects that support a call method. Class Module holds a pointer to a module. If you want to create an extension module, however, see the extension facility. There is a large set of numeric operators.

    class Callable
    TypeNameComment
    explicitCallable( PyObject *pyob, bool owned = false )
    Callable &operator=( const Object &rhs )
    Callable &operator=( PyObject *rhsp )
    Objectapply( const Tuple &args ) constCall the object with the given positional arguments
    Objectapply( const Tuple &args, const Dict &kwd ) constCall the object with the given positional and keyword arguments
    Objectapply( PyObject *pargs = 0 ) const Call the object with args as the arguments. Checks that pargs is a tuple.

    Interface to class Module

    class Module
    Type Name Comment
    explicit Module( PyObject *pyob, bool owned = false )
    explicit Module( const std::string name ) Construct from name of module; does the import if needed.
    Module( const Module &ob ) Copy constructor
    Module& operator=( const Object &rhs ) Assignment
    Module& operator=( PyObject *rhsp ) Assignment

    Numeric interface

    Unary operators for plus and minus, and binary operators +, -, *, /, and % are defined for pairs of objects and for objects with scalar integers or doubles( in either order ). Functions abs( ob ) and coerce( o1, o2 ) are also defined.

    The signature for coerce is:

    inline std::pair<Object,Object> coerce( const Object &a, const Object &b )

    Unlike the C API function, this simply returns the pair after coercion.

    Stream I/O

    Any object can be printed using stream I/O, using std::ostream &operator<< ( std::ostream &os, const Object &ob ). The object's str() representation is converted to a standard string which is passed to std::ostream &operator<< ( std::ostream &os, const std::string &).

    Exceptions

    All the standard python exceptions have a C++ equivilent that can to caught and thrown.

    In addition new exceptions can be defined using PyCXX as well.

    Exceptions thrown from C++ will be converted into Python exceptions when returning to Python code.

    Python exceptions are converted into C++ exceptions when returning from Python code back into C++ code.

    class BaseException and its children

    All the Python standard exceptions are provided as C++ classes. The C++ class hierarchy mirrors the Python class hierarchy. The base of the exception hierarchy is class BaseException.

    The derived exception class, such as IndexError, RuntimeError and ValueError, has a constructor which takes an explanatory string as an argument, and is used in a throw statement such as:

    throw IndexError( "Index too large in MyObject access." );

    You cannot throw BaseException, but you can catch it.

    See the Python documentation for a list of all the standard exceptions.

    List of Exceptions

    The exception hierarchy mirrors the Python exception hierarchy. The concrete exception classes are shown here. With ValueError being the pattern for all the other expections.

    BaseException
    Type Interface for class Exception Comment
    explicit BaseException()
    BaseException( const std::string &reason )
    BaseException( PyObject *exception, const std::string &reason )
    void clear() Clear the exception.
    Object errorType() Returns the type of the exception
    Object errorValue() Returns the value of the exception
    Python Standard Exceptions
    Type Interface for class Exception
    void python-standard-exception( const std::string &reason )

    Using Exceptions in extension methods

    The exception facility allows you to integrate the C++ and Python exception mechanisms. To do this, you must use the style described below when writing module methods in the old C style.

    Note: If using the ExtensionModule or PythonExtension mechanisms described below, the method handlers include exception handling so that you only need to use exceptions explicitly in unusual cases.

    Catching Exceptions from the Python API or PyCXX.

    In the example, some_method, any expections raise from the C++ will be automatically converted into Python exceptions.

    Object
    some_method( Object &args )
    {
        Tuple a( args ); // we know args is a Tuple
    
        if( a.length() != 2 )
        {
            throw AttributeError( "2 arguments expected" );
        }
    
        // do something useful
        // and return a result
    
        return result;
    }
    

    And in this example the call_python method is calling back into python and handling ArithmeticError from the "func". Any other expections will be passed back to Python.

    The exceptions error type and error value can be obtained with the errorType() and errorValue() functions.

    Object
    cal_python( Object &args )
    {
        Tuple a( args ); // we know args is a Tuple
        Callable func( a[0] );   // first arg expected to be a python callable
    
        ...
        Tuple call_args( 1 );
        call_args[0] = Long( 42 );
        try
        {
            Object result = func.apply( call_args );
        }
        catch( ArithmeticError &e )
        {
            Object err_type = e.errorType();
            Object err_value = e.errorValue();
    
            // get the text of the error for reporting
            String message = err_value.str();
    
            // handle error
            e.clear();
        }
    
        return result;
    }
    

    How to clear an Exception

    If you anticipate that an Exception may be thrown and wish to recover from it then add a try/catch block for the expected exception. Then use the method clear() to tell python that the expection has been handled.

    catch( ValueError &e )
    {
        // handle expection
        e.clear();
    }
    

    Extension Facilities

    CXX/Extensions.hxx provides facilities for:

    • Creating a Python extension module
    • Creating new Python extension types

    These facilities use CXX/Objects.hxx and its support file cxxsupport.cxx.

    If you use CXX/Extensions.hxx you must also include source files cxxextensions.c and cxx_extensions.cxx

    Creating an Python extension module

    The usual method of creating a Python extension module is to declare and initialize its method table in C. This requires knowledge of the correct form for the table and the order in which entries are to be made into it, and requires casts to get everything to compile without warning. The PyCXX header file CXX/Extensions.h offers a simpler method. Here is a sample usage, in which a module named "example" is created. Note that two details are necessary:

    • The initialization function must be declared to have external C linkage and to have the expected name. This is a requirement imposed by Python
    • The ExtensionModule object must have a storage class that survives the call to the initialization function. This is most easily accomplished by using a static local inside the initialization function, as in initexample below.

    To create an extension module, you inherit from class ExtensionModule templated on yourself: In the constructor, you make calls to register methods of this class with Python as extension module methods. In this example, two methods are added( this is a simplified form of the example in Demo/example.cxx ):

    class example_module : public ExtensionModule<example_module>
    {
    public:
        example_module()
        : ExtensionModule<example_module>( "example" )
        {
            add_varargs_method( "sum", &example_module::ex_sum, "sum( arglist ) = sum of arguments" );
            add_varargs_method( "test", &example_module::ex_test, "test( arglist ) runs a test suite" );
    
            initialize( "documentation for the example module" );
        }
    
        virtual ~example_module() {}
    
    private:
        Object ex_sum( const Tuple &a ) { ... }
        Object ex_test( const Tuple &a ) { ... }
    };
    

    To initialize the extension, you just instantiate one static instance( static so it does not destroy itself! ):

    void initexample()
    {
        static example_module* example = new example_module;
    }

    The methods can be written to take Tuples as arguments and return Objects. If exceptions occur they are trapped for you and a Python exception is generated. So, for example, the implementation of ex_sum might be:

    Object ex_sum( const Tuple &a )
    {
        Float f( 0.0 );
        for( int i = 0; i < a.length(); i++ )
        {
            Float g( a[i] );
            f = f + g;
        }
        return f;
    }

    class ExtensionModule contains methods to return itself as a Module object, or to return its dictionary.

    class ExtensionModule
    Type Name Comment
    explicit ExtensionModule( char* name ) Create an extension module named "name"
    virtual ~ExtensionModule() Destructor
    Dict moduleDictionary() const Returns the module dictionary; module must be initialized.
    Module module() const This module as a Module.
    void add_varargs_method( char *name, method_varargs_function_t method, char *documentation="" ) Add a method to the module.
    void add_keyword_method( char *name, method_keyword_function_t method, char *documentation="" Add a method that takes keywords
    void initialize()( protected, call from constructor ) Initialize the module once all methods have been added.

    The signatures above are:

    typedef Object( T::*method_varargs_function_t )( const Tuple &args );
    typedef Object( T::*method_keyword_function_t )( const Tuple &args, const Dict &kws
     );

    That is, the methods take a Tuple or a Tuple and a Dict, and return an Object. The example below has an &in front of the name of the method; we found one compiler that needed this.

    Creating a Python extension type

    One of the great things about Python is the way you can create your own object types and have Python welcome them as first-class citizens. Unfortunately, part of the way you have to do this is not great. Key to the process is the creation of a Python "type object". All instances of this type must share a reference to this one unique type object. The type object itself has a multitude of "slots" into which the addresses of functions can be added in order to give the object the desired behavior.

    Creating extension objects is of course harder since you must specify how the object behaves and give it methods. This is shown in some detail in the example range.h and range.cxx, with the test routine rangetest.cxx, in directory Demo. If you have never created a Python extension before, you should read the Extension manual first and be very familiar with Python's "special class methods". Then what follows will make more sense.

    The basic idea is to inherit from PythonExtension templated on your self

    class MyObject: public PythonExtension<MyObject> {...}

    As a consequence:

    • MyObject is a child of PyObject, so that a MyObject* is-a PyObject*.
    • A static method check( PyObject * ) is created in class MyObject. This function returns a boolean, testing whether or not the argument is in fact a pointer to an instance of MyObject.
    • The user can connect methods of MyObject to Python so that they are methods on MyObject objects. Each such method has the signature:
      Object method_name( const Tuple &args ).
    • The user can override virtual methods of PythonExtension in order to set behaviors.
    • A method is created to handle the deletion of an instance if and when its reference count goes to zero. This method ensures the calling of the class destructor ~MyObject(), if any, and releases the memory( see below ).
    • Both automatic and heap-based instances of MyObject can be created.

    Sample usage of PythonExtension

    Here is a brief overview. You create a class that inherits from PythonExtension templated upon itself. You override various methods from PythonExtension to implement behaviors, such as getattr, sequence_item, etc. You can also add methods to the object that are usable from Python using a similar scheme as for module methods above.

    One of the consequences of inheriting from PythonExtension is that you are inheriting from PyObject itself. So your class is-a PyObject and instances of it can be passed to the Python C API. Note: this example uses the namespace feature of PyCXX.

    Hint: You can avoid needing to specify the Py:: prefix if you include the C++ statement using Py; at the top of your files.

    class range: public Py::PythonExtension<range>
    {
    public:
        ... constructors, data, etc.
        ... methods not callable from Python
        // initializer, see below
        static void init_type();
        // override functions from PythonExtension
        virtual Py::Object repr();
        virtual Py::Object getattr( const char *name );
    
        virtual int sequence_length();
        virtual Py::Object sequence_item( int i );
        virtual Py::Object sequence_concat( const Py::Object &j );
        virtual Py::Object sequence_slice( int i, int j );
    
        // define python methods of this object
        Py::Object amethod( const Py::Tuple &args );
        Py::Object value( const Py::Tuple &args );
        Py::Object assign( const Py::Tuple &args ); 
    };

    To initialize the type we provide a static method that we can call from some module's initializer. We set the name, doc string, and indicate which behaviors range objects support. Then we adds the methods.

    void range::init_type()
    {
        behaviors().name( "range" );
        behaviors().doc( "range objects: start, stop, step" );
        behaviors().supportRepr();
        behaviors().supportGetattr();
        behaviors().supportSequenceType();
    
        add_varargs_method( "amethod", &range::amethod, "demonstrate how to document amethod" );
        add_varargs_method( "assign", &range::assign );
        add_varargs_method( "value", &range::value );
    
        behaviors().readyType();
    }

    Do not forget to add the call range::init_type() to some module's init function. You will want a method in some module that can create range objects, too.

    Your extension class T inherits PythonExtension<T>.

    class PythonExtension<T>
    Type Name Comment
    virtual ~PythonExtension<T>() Destructor
    PyTypeObject* type_object() const Returns the object type object.
    int check( PyObject *p ) Is p a T?
    Protected
    void add_varargs_method( char *name, method_keyword_function_t method, char *documentation="" Add a method that takes arguments
    void add_keyword_method( char *name, method_keyword_function_t method, char *documentation="" Add a method that takes keywords
    static PythonType& behaviors() The type object
    void initialize()( protected, call from constructor ) Initialize the module once all methods have been added.

    As before the signatures for the methods are Object mymethod( const Tuple &args ) and Object mykeywordmethod( const Tuple &args, const Dict &keys ). In this case, the methods must be methods of T.

    To set the behaviors of the object you override some or all of these methods from PythonExtension<T>:

    virtual int print( FILE *, int );
    virtual Object getattr( const char * );
    virtual int setattr( const char *, const Object &);
    virtual Object getattro( const Object &);
    virtual int setattro( const Object &, const Object &);
    virtual int compare( const Object &);
    virtual Object repr();
    virtual Object str();
    virtual long hash();
    virtual Object call( const Object &, const Object &);
    
    // Sequence methods
    virtual int sequence_length();
    virtual Object sequence_concat( const Object &);
    virtual Object sequence_repeat( int );
    virtual Object sequence_item( int );
    virtual Object sequence_slice( int, int );
    virtual int sequence_ass_item( int, const Object &);
    virtual int sequence_ass_slice( int, int, const Object &);
    
    // Mapping
    virtual int mapping_length();
    virtual Object mapping_subscript( const Object &);
    virtual int mapping_ass_subscript( const Object &, const Object &);
    
    // Number
    virtual int number_nonzero();
    virtual Object number_negative();
    virtual Object number_positive();
    virtual Object number_absolute();
    virtual Object number_invert();
    virtual Object number_int();
    virtual Object number_float();
    virtual Object number_long();
    virtual Object number_oct();
    virtual Object number_hex();
    virtual Object number_add( const Object &);
    virtual Object number_subtract( const Object &);
    virtual Object number_multiply( const Object &);
    virtual Object number_divide( const Object &);
    virtual Object number_remainder( const Object &);
    virtual Object number_divmod( const Object &);
    virtual Object number_lshift( const Object &);
    virtual Object number_rshift( const Object &);
    virtual Object number_and( const Object &);
    virtual Object number_xor( const Object &);
    virtual Object number_or( const Object &);
    virtual Object number_power( const Object &, const Object &);
    
    // Buffer
    virtual int buffer_getreadbuffer( int, void** );
    virtual int buffer_getwritebuffer( int, void** );
    virtual int buffer_getsegcount( int* );

    Note that dealloc is not one of the functions you can override. That is what your destructor is for. As noted below, dealloc behavior is provided for you by PythonExtension.

    Type initialization

    To initialize your type, supply a static public member function that can be called from the extension module. In that function, obtain the PythonType object by calling behaviors() and apply appropriate "support" methods from PythonType to turn on the support for that behavior or set of behaviors.

    void supportPrint( void );
    void supportGetattr( void );
    void supportSetattr( void );
    void supportGetattro( void );
    void supportSetattro( void );
    void supportCompare( void );
    void supportRepr( void );
    void supportStr( void );
    void supportHash( void );
    void supportCall( void );
    
    void supportSequenceType( int methods_to_support=
                            support_sequence_length |
                            support_sequence_repeat |
                            support_sequence_item |
                            support_sequence_slice |
                            support_sequence_concat );
    void supportMappingType( int methods_to_support=
                            support_mapping_length |
                            support_mapping_subscript );
    void supportNumberType( int methods_to_support=
                    support_number_add |
                    support_number_subtract |
                    support_number_multiply |
                    support_number_remainder |
                    support_number_divmod |
                    support_number_power |
                    support_number_negative |
                    support_number_positive |
                    support_number_absolute |
                    support_number_invert |
                    support_number_lshift |
                    support_number_rshift |
                    support_number_and |
                    support_number_xor |
                    support_number_or |
                    support_number_int |
                    support_number_float,
                int inplace_methods_to_support=0
                 );
    void supportBufferType(  int methods_to_support=
                        support_buffer_getbuffer |
                        support_buffer_releasebuffer );

    Then call add_varargs_method or add_keyword_method to add any methods desired to the object.

    Notes on memory management and extension objects

    Normal Python objects exist only on the heap. That is unfortunate, as object creation and destruction can be relatively expensive. Class PythonExtension allows creation of both local and heap-based objects.

    If an extension object is created using operator new, as in:

    range* my_r_ref = new range( 1, 20, 3 )

    then the entity my_r_ref can be thought of as "owning" the reference created in the new object. Thus, the object will never have a reference count of zero. If the creator wishes to delete this object, they should either make sure the reference count is 1 and then do delete my_r_ref, or decrement the reference with Py_DECREF( my_r_ref ).

    Should my_r_ref give up ownership by being used in an Object constructor, all will still be well. When the Object goes out of scope its destructor will be called, and that will decrement the reference count, which in turn will trigger the special dealloc routine that calls the destructor and deletes the pointer.

    If the object is created with automatic scope, as in:

    range my_r( 1, 20, 3 )

    then my_r can be thought of as owning the reference, and when my_r goes out of scope the object will be destroyed. Of course, care must be taken not to have kept any permanent reference to this object. Fortunately, in the case of an exception, the C++ exception facility will call the destructor of my_r. Naturally, care must be taken not to end up with a dangling reference, but such objects can be created and destroyed more efficiently than heap-based PyObjects.

    pysvn-1.9.22/Import/pycxx-7.1.9/RegressionTests/mem-leak.py000644 000765 000024 00000001161 11523511652 023552 0ustar00barrystaff000000 000000 import simple import time import sys import os def report( title ): print( title ) os.system( 'ps uww -p %d' % (os.getpid(),) ) report( 'Start:' ) if sys.argv[1] == 'encode': for x in range( 1000000 ): y = '%6d-Hello-%6d' % (x, x) else: for x in range( 1000000 ): y = ('%6d-Hello-%6d' % (x, x)).encode( 'utf-8' ) report( 'InitDone:' ) if sys.argv[1] == 'encode': for x in range( 1000000 ): y = simple.encode_test( '%6d-Hello-%6d' % (x, x) ) else: for x in range( 1000000 ): y = simple.decode_test( ('%6d-Hello-%6d' % (x, x)).encode( 'utf-8' ) ) report( 'Done:' ) pysvn-1.9.22/Import/pycxx-7.1.9/Lib/__init__.py000644 000765 000024 00000004410 12711370232 021161 0ustar00barrystaff000000 000000 #----------------------------------------------------------------------------- # # Copyright (c) 1998 - 2007, The Regents of the University of California # Produced at the Lawrence Livermore National Laboratory # All rights reserved. # # This file is part of PyCXX. For details,see http:#cxx.sourceforge.net/. The # full copyright notice is contained in the file COPYRIGHT located at the root # of the PyCXX distribution. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the disclaimer below. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the disclaimer (as noted below) in the # documentation and/or materials provided with the distribution. # - Neither the name of the UC/LLNL nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF # CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. # #----------------------------------------------------------------------------- print( """CXX is installed. The support files you need are in the PYTHON/etc/CXX directory. The include files are in the distutils include path already. Just refer to them as "CXX/CXX_Objects.h", etc. """ ) pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Exception.hxx000644 000765 000024 00000004352 11146066410 021501 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/Exception.hxx" #else #include "CXX/Python3/Exception.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Extensions.hxx000644 000765 000024 00000004354 11146066410 021704 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/Extensions.hxx" #else #include "CXX/Python3/Extensions.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/IndirectPythonInterface.hxx000644 000765 000024 00000000252 11146072165 024326 0ustar00barrystaff000000 000000 #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/IndirectPythonInterface.hxx" #else #include "CXX/Python3/IndirectPythonInterface.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/000755 000765 000024 00000000000 14477104307 020362 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/000755 000765 000024 00000000000 14477104307 020361 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Objects.hxx000644 000765 000024 00000004346 11146066410 021137 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/Objects.hxx" #else #include "CXX/Python3/Objects.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Version.hxx000644 000765 000024 00000004666 14477044572 021217 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __PyCXX_version_hxx__ #define __PyCXX_version_hxx__ #define PYCXX_VERSION_MAJOR 7 #define PYCXX_VERSION_MINOR 1 #define PYCXX_VERSION_PATCH 9 #define PYCXX_MAKEVERSION( major, minor, patch ) ((major<<16)|(minor<<8)|(patch)) #define PYCXX_VERSION PYCXX_MAKEVERSION( PYCXX_VERSION_MAJOR, PYCXX_VERSION_MINOR, PYCXX_VERSION_PATCH ) #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Config.hxx000644 000765 000024 00000004536 12754334502 020762 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #include "CXX/WrapPython.h" #if defined( PYCXX_6_2_COMPATIBILITY ) typedef int PyCxx_ssize_t; #else typedef Py_ssize_t PyCxx_ssize_t; #endif #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/Config.hxx" #else #include "CXX/Python3/Config.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/CxxDebug.hxx000644 000765 000024 00000004313 12754100607 021254 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #if PY_MAJOR_VERSION == 2 #include "CXX/Python2/CxxDebug.hxx" #else #include "CXX/Python3/CxxDebug.hxx" #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/WrapPython.h000644 000765 000024 00000005561 11771611632 021307 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __PyCXX_wrap_python_hxx__ #define __PyCXX_wrap_python_hxx__ // On some platforms we have to include time.h to get select defined #if !defined(__WIN32__) && !defined(WIN32) && !defined(_WIN32) && !defined(_WIN64) #include #endif // Prevent multiple conflicting definitions of swab from stdlib.h and unistd.h #if defined(__sun) || defined(sun) #if defined(_XPG4) #undef _XPG4 #endif #endif // Python.h will redefine these and generate warning in the process #undef _XOPEN_SOURCE #undef _POSIX_C_SOURCE // pull in python definitions #include // fix issue with Python assuming that isspace, toupper etc are macros #if defined(isspace) #undef isspace #undef isupper #undef islower #undef isalnum #undef isalpha #undef toupper #undef tolower #endif #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/Exception.hxx000644 000765 000024 00000013403 13146323403 023041 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Exception_h #define __CXX_Exception_h #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Python2/Config.hxx" #include "CXX/Python2/CxxDebug.hxx" #include "CXX/Python2/IndirectPythonInterface.hxx" #include #include // This mimics the Python structure, in order to minimize confusion namespace Py { class ExtensionExceptionType; class Object; class BaseException { public: BaseException( ExtensionExceptionType &exception, const std::string &reason ); BaseException( ExtensionExceptionType &exception, Object &reason ); BaseException( PyObject *exception, Object &reason ); BaseException( PyObject *exception, const std::string &reason ); explicit BaseException(); void clear(); // clear the error // is the exception this specific exception 'exc' bool matches( ExtensionExceptionType &exc ); }; #if defined( PYCXX_6_2_COMPATIBILITY ) class Exception : public BaseException { public: Exception( ExtensionExceptionType &exception, const std::string &reason ) : BaseException( exception, reason ) {} Exception( ExtensionExceptionType &exception, Object &reason ) : BaseException( exception, reason ) {} Exception( PyObject *exception, Object &reason ) : BaseException ( exception, reason ) {} Exception( PyObject *exception, const std::string &reason ) : BaseException( exception, reason ) {} explicit Exception() : BaseException() {} }; #endif // for user defined exceptions to be made know to pycxx typedef void (*throw_exception_func_t)( void ); void addPythonException( ExtensionExceptionType &py_exc_type, throw_exception_func_t throw_func ); #define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ class eclass : public bclass \ { \ public: \ eclass() {} \ eclass( const char *reason ) { PyErr_SetString( _Exc_##eclass(), reason ); } \ eclass( const std::string &reason ) { PyErr_SetString( _Exc_##eclass(), reason.c_str() ); } \ ~eclass() {} \ \ static void throwFunc() { throw eclass(); } \ static PyObject *exceptionType() { return _Exc_##eclass(); } \ }; \ #include #undef PYCXX_STANDARD_EXCEPTION #define PYCXX_USER_EXCEPTION_STR_ARG( uclass ) \ class uclass : public Py::BaseException \ { \ public: \ uclass( const std::string &reason ) \ : Py::BaseException( m_error, reason ) \ { } \ ~uclass() {} \ static void init( Py::ExtensionModuleBase &module ) \ { \ m_error.init( module, #uclass ); \ Py::addPythonException( m_error, throwFunc ); \ Py::Dict d( module.moduleDictionary() ); \ d[#uclass] = m_error; \ } \ private: \ uclass() : Py::BaseException() {} \ static void throwFunc() \ { \ throw uclass(); \ } \ static Py::ExtensionExceptionType m_error; \ }; \ Py::ExtensionExceptionType uclass::m_error; #define PYCXX_USER_EXCEPTION_NO_ARG( uclass ) \ class uclass : public Py::BaseException \ { \ public: \ uclass() \ : Py::BaseException() \ { } \ ~uclass() {} \ static void init( Py::ExtensionModuleBase &module ) \ { \ m_error.init( module, #uclass ); \ Py::addPythonException( m_error, throwFunc ); \ Py::Dict d( module.moduleDictionary() ); \ d[#uclass] = m_error; \ } \ private: \ static void throwFunc() \ { \ throw uclass(); \ } \ static Py::ExtensionExceptionType m_error; \ }; \ Py::ExtensionExceptionType uclass::m_error; }// Py #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/Extensions.hxx000644 000765 000024 00000015625 12745352476 023272 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Extensions__h #define __CXX_Extensions__h #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // okay to ignore #pragma warning( disable: 4786 ) #endif #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Python2/Config.hxx" #include "CXX/Python2/CxxDebug.hxx" #include "CXX/Python2/Objects.hxx" extern "C" { extern PyObject py_object_initializer; } #include #include // ---------------------------------------------------------------------- namespace Py { class ExtensionModuleBase; // Make an Exception Type for use in raising custom exceptions class ExtensionExceptionType : public Object { public: ExtensionExceptionType(); virtual ~ExtensionExceptionType(); // call init to create the type void init( ExtensionModuleBase &module, const std::string &name, ExtensionExceptionType &parent ); void init( ExtensionModuleBase &module, const std::string &name ); }; class MethodTable { public: MethodTable(); virtual ~MethodTable(); void add( const char *method_name, PyCFunction f, const char *doc="", int flag=1 ); PyMethodDef *table(); protected: std::vector t; // accumulator of PyMethodDef's PyMethodDef *mt; // Actual method table produced when full static PyMethodDef method( const char* method_name, PyCFunction f, int flags=1, const char* doc="" ); private: // // prevent the compiler generating these unwanted functions // MethodTable( const MethodTable &m ); //unimplemented void operator=( const MethodTable &m ); //unimplemented }; // end class MethodTable // Note: Python calls noargs as varargs buts args==NULL extern "C" typedef PyObject *(*method_noargs_call_handler_t)( PyObject *_self, PyObject * ); extern "C" typedef PyObject *(*method_varargs_call_handler_t)( PyObject *_self, PyObject *_args ); extern "C" typedef PyObject *(*method_keyword_call_handler_t)( PyObject *_self, PyObject *_args, PyObject *_dict ); template class MethodDefExt { public: typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); // NOARGS MethodDefExt ( const char *_name, method_noargs_function_t _function, method_noargs_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_NOARGS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = _function; ext_varargs_function = NULL; ext_keyword_function = NULL; } // VARARGS MethodDefExt ( const char *_name, method_varargs_function_t _function, method_varargs_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_VARARGS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = NULL; ext_varargs_function = _function; ext_keyword_function = NULL; } // VARARGS + KEYWORD MethodDefExt ( const char *_name, method_keyword_function_t _function, method_keyword_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_VARARGS|METH_KEYWORDS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = NULL; ext_varargs_function = NULL; ext_keyword_function = _function; } ~MethodDefExt() {} PyMethodDef ext_meth_def; method_noargs_function_t ext_noargs_function; method_varargs_function_t ext_varargs_function; method_keyword_function_t ext_keyword_function; Object py_method; }; } // Namespace Py #include "CXX/Python2/ExtensionModule.hxx" #include "CXX/Python2/PythonType.hxx" #include "CXX/Python2/ExtensionTypeBase.hxx" #include "CXX/Python2/ExtensionOldType.hxx" #include "CXX/Python2/ExtensionType.hxx" // End of CXX_Extensions.h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/IndirectPythonInterface.hxx000644 000765 000024 00000011224 13437177573 025710 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ #define __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ #include "CXX/WrapPython.h" namespace Py { bool InitialisePythonIndirectInterface(); // // Wrap Exception variables as function calls // PyObject * _Exc_BaseException(); #define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ PyObject * _Exc_##eclass(); #include "CXX/Python2/cxx_standard_exceptions.hxx" #undef PYCXX_STANDARD_EXCEPTION // // Wrap Object variables as function calls // PyObject * _None(); PyObject * _False(); PyObject * _True(); // // Wrap Type variables as function calls // PyTypeObject * _List_Type(); bool _List_Check( PyObject *o ); PyTypeObject * _Buffer_Type(); bool _Buffer_Check( PyObject *op ); PyTypeObject * _Class_Type(); bool _Class_Check( PyObject *op ); PyTypeObject * _Instance_Type(); bool _Instance_Check( PyObject *op ); PyTypeObject * _Method_Type(); bool _Method_Check( PyObject *op ); PyTypeObject * _CObject_Type(); bool _CObject_Check( PyObject *op ); PyTypeObject * _Complex_Type(); bool _Complex_Check( PyObject *op ); PyTypeObject * _Dict_Type(); bool _Dict_Check( PyObject *op ); PyTypeObject * _File_Type(); bool _File_Check( PyObject *op ); PyTypeObject * _Float_Type(); bool _Float_Check( PyObject *op ); PyTypeObject * _Frame_Type(); bool _Frame_Check( PyObject *op ); PyTypeObject * _Function_Type(); bool _Function_Check( PyObject *op ); PyTypeObject * _Bool_Type(); bool _Boolean_Check( PyObject *op ); PyTypeObject * _Int_Type(); bool _Int_Check( PyObject *op ); PyTypeObject * _List_Type(); bool _List_Check( PyObject *op ); PyTypeObject * _Long_Type(); bool _Long_Check( PyObject *op ); PyTypeObject * _CFunction_Type(); bool _CFunction_Check( PyObject *op ); PyTypeObject * _Module_Type(); bool _Module_Check( PyObject *op ); PyTypeObject * _Type_Type(); bool _Type_Check( PyObject *op ); PyTypeObject * _Range_Type(); bool _Range_Check( PyObject *op ); PyTypeObject * _Slice_Type(); bool _Slice_Check( PyObject *op ); PyTypeObject * _String_Type(); bool _String_Check( PyObject *op ); PyTypeObject * _TraceBack_Type(); bool _TraceBack_Check( PyObject *v ); PyTypeObject * _Tuple_Type(); bool _Tuple_Check( PyObject *op ); #if PY_MAJOR_VERSION >= 2 PyTypeObject * _Unicode_Type(); bool _Unicode_Check( PyObject *op ); #endif int &_Py_DebugFlag(); int &_Py_InteractiveFlag(); int &_Py_OptimizeFlag(); int &_Py_NoSiteFlag(); int &_Py_TabcheckFlag(); int &_Py_VerboseFlag(); void _XINCREF( PyObject *op ); void _XDECREF( PyObject *op ); char *__Py_PackageContext(); } #endif // __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/ExtensionTypeBase.hxx000644 000765 000024 00000020656 13662723705 024540 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionTypeBase__h #define __CXX_ExtensionTypeBase__h namespace Py { // Class PythonExtension is what you inherit from to create // a new Python extension type. You give your class itself // as the template paramter. // There are two ways that extension objects can get destroyed. // 1. Their reference count goes to zero // 2. Someone does an explicit delete on a pointer. // In(1) the problem is to get the destructor called // We register a special deallocator in the Python type object // (see behaviors()) to do this. // In(2) there is no problem, the dtor gets called. // PythonExtension does not use the usual Python heap allocator, // instead using new/delete. We do the setting of the type object // and reference count, usually done by PyObject_New, in the // base class ctor. // This special deallocator does a delete on the pointer. class PythonExtensionBase : public PyObject { public: PythonExtensionBase(); virtual ~PythonExtensionBase(); public: // object virtual void reinit( Tuple &args, Dict &kwds ); // object basics virtual int print( FILE *, int ); virtual Object getattr( const char * ); virtual int setattr( const char *, const Object & ); virtual Object getattro( const String & ); Object genericGetAttro( const String & ); virtual int setattro( const String &, const Object & ); int genericSetAttro( const String &, const Object & ); virtual int compare( const Object & ); virtual Object rich_compare( const Object &, int ); virtual Object repr(); virtual Object str(); virtual long hash(); virtual Object call( const Object &, const Object & ); virtual Object iter(); virtual PyObject *iternext(); // Sequence methods virtual PyCxx_ssize_t sequence_length(); virtual Object sequence_concat( const Object & ); virtual Object sequence_repeat( Py_ssize_t ); virtual Object sequence_item( Py_ssize_t ); virtual Object sequence_slice( Py_ssize_t, Py_ssize_t ); virtual int sequence_ass_item( Py_ssize_t, const Object & ); virtual int sequence_ass_slice( Py_ssize_t, Py_ssize_t, const Object & ); virtual Object sequence_inplace_concat( const Object & ); virtual Object sequence_inplace_repeat( Py_ssize_t ); virtual int sequence_contains( const Object & ); // Mapping virtual PyCxx_ssize_t mapping_length(); virtual Object mapping_subscript( const Object & ); virtual int mapping_ass_subscript( const Object &, const Object & ); // Number virtual int number_nonzero(); virtual Object number_negative(); virtual Object number_positive(); virtual Object number_absolute(); virtual Object number_invert(); virtual Object number_int(); virtual Object number_float(); virtual Object number_long(); virtual Object number_oct(); virtual Object number_hex(); virtual Object number_add( const Object & ); virtual Object number_subtract( const Object & ); virtual Object number_multiply( const Object & ); virtual Object number_divide( const Object & ); virtual Object number_remainder( const Object & ); virtual Object number_divmod( const Object & ); virtual Object number_lshift( const Object & ); virtual Object number_rshift( const Object & ); virtual Object number_and( const Object & ); virtual Object number_xor( const Object & ); virtual Object number_or( const Object & ); virtual Object number_power( const Object &, const Object & ); // Buffer virtual Py_ssize_t buffer_getreadbuffer( Py_ssize_t, void** ); virtual Py_ssize_t buffer_getwritebuffer( Py_ssize_t, void** ); virtual Py_ssize_t buffer_getsegcount( Py_ssize_t* ); public: // helper functions to call function fn_name with 0 to 9 args Object callOnSelf( const std::string &fn_name ); Object callOnSelf( const std::string &fn_name, const Object &arg1 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8, const Object &arg9 ); public: virtual PyObject *selfPtr() = 0; virtual Object self() = 0; private: void missing_method( void ); static PyObject *method_call_handler( PyObject *self, PyObject *args ); }; } // Namespace Py // End of __CXX_ExtensionTypeBase__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/ExtensionType.hxx000644 000765 000024 00000034244 13662723705 023743 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionClass__h #define __CXX_ExtensionClass__h #define PYCXX_NOARGS_METHOD_NAME( NAME ) _callNoArgsMethod__##NAME #define PYCXX_VARARGS_METHOD_NAME( NAME ) _callVarArgsMethod__##NAME #define PYCXX_KEYWORDS_METHOD_NAME( NAME ) _callKeywordsMethod__##NAME #define PYCXX_NOARGS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_NOARGS_METHOD_NAME( NAME )( PyObject *_self, PyObject *, PyObject * ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Object r( (self->NAME)() ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } #define PYCXX_VARARGS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_VARARGS_METHOD_NAME( NAME )( PyObject *_self, PyObject *_a, PyObject * ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Tuple a( _a ); \ Py::Object r( (self->NAME)( a ) ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } #define PYCXX_KEYWORDS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_KEYWORDS_METHOD_NAME( NAME )( PyObject *_self, PyObject *_a, PyObject *_k ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Tuple a( _a ); \ Py::Dict k; \ if( _k != NULL ) \ k = _k; \ Py::Object r( (self->NAME)( a, k ) ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } // need to support METH_STATIC and METH_CLASS #define PYCXX_ADD_NOARGS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_NOARGS_METHOD_NAME( NAME ), METH_NOARGS, docs ) #define PYCXX_ADD_VARARGS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_VARARGS_METHOD_NAME( NAME ), METH_VARARGS, docs ) #define PYCXX_ADD_KEYWORDS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_KEYWORDS_METHOD_NAME( NAME ), METH_VARARGS | METH_KEYWORDS, docs ) namespace Py { extern PythonExtensionBase *getPythonExtensionBase( PyObject *self ); struct PythonClassInstance { PyObject_HEAD PythonExtensionBase *m_pycxx_object; }; class ExtensionClassMethodsTable { public: ExtensionClassMethodsTable() : m_methods_table( new PyMethodDef[ METHOD_TABLE_SIZE_INCREMENT ] ) , m_methods_used( 0 ) , m_methods_size( METHOD_TABLE_SIZE_INCREMENT ) { // add the sentinel marking the table end PyMethodDef *p = &m_methods_table[ 0 ]; p->ml_name = NULL; p->ml_meth = NULL; p->ml_flags = 0; p->ml_doc = NULL; } ~ExtensionClassMethodsTable() { delete[] m_methods_table; } // check that all methods added are unique void check_unique_method_name( const char *_name ) { std::string name( _name ); for( int i=0; iml_name = const_cast( name ); p->ml_meth = function; p->ml_flags = flags; p->ml_doc = const_cast( doc ); m_methods_used++; p++; // add the sentinel marking the table end p->ml_name = NULL; p->ml_meth = NULL; p->ml_flags = 0; p->ml_doc = NULL; return m_methods_table; } private: enum {METHOD_TABLE_SIZE_INCREMENT = 1}; PyMethodDef *m_methods_table; int m_methods_used; int m_methods_size; }; template class PythonClass : public PythonExtensionBase { protected: explicit PythonClass( PythonClassInstance *self, Tuple &/*args*/, Dict &/*kwds*/ ) : PythonExtensionBase() , m_class_instance( self ) { } virtual ~PythonClass() {} static ExtensionClassMethodsTable &methodTable() { static ExtensionClassMethodsTable *method_table; if( method_table == NULL ) method_table = new ExtensionClassMethodsTable; return *method_table; } static void add_method( const char *name, PyCFunction function, int flags, const char *doc=NULL ) { behaviors().set_methods( methodTable().add_method( name, function, flags, doc ) ); } static PythonType &behaviors() { static PythonType *p; if( p == NULL ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) const char *default_name = (typeid( T )).name(); #else const char *default_name = "unknown"; #endif p = new PythonType( sizeof( PythonClassInstance ), 0, default_name ); p->set_tp_new( extension_object_new ); p->set_tp_init( extension_object_init ); p->set_tp_dealloc( extension_object_deallocator ); // we are a class p->supportClass(); // always support get and set attr p->supportGetattro(); p->supportSetattro(); } return *p; } static PyObject *extension_object_new( PyTypeObject *subtype, PyObject * /*args*/, PyObject * /*kwds*/ ) { #ifdef PYCXX_DEBUG std::cout << "extension_object_new()" << std::endl; #endif PythonClassInstance *o = reinterpret_cast( subtype->tp_alloc( subtype, 0 ) ); if( o == NULL ) return NULL; o->m_pycxx_object = NULL; PyObject *self = reinterpret_cast( o ); #ifdef PYCXX_DEBUG std::cout << "extension_object_new() => self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << std::endl; #endif return self; } static int extension_object_init( PyObject *_self, PyObject *args_, PyObject *kwds_ ) { try { Py::Tuple args( args_ ); Py::Dict kwds; if( kwds_ != NULL ) kwds = kwds_; PythonClassInstance *self = reinterpret_cast( _self ); #ifdef PYCXX_DEBUG std::cout << "extension_object_init( self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << " )" << std::endl; std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif if( self->m_pycxx_object == NULL ) { self->m_pycxx_object = new T( self, args, kwds ); #ifdef PYCXX_DEBUG std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif } else { #ifdef PYCXX_DEBUG std::cout << " reinit - self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif self->m_pycxx_object->reinit( args, kwds ); } } catch( BaseException & ) { return -1; } return 0; } static void extension_object_deallocator( PyObject *_self ) { PythonClassInstance *self = reinterpret_cast< PythonClassInstance * >( _self ); #ifdef PYCXX_DEBUG std::cout << "extension_object_deallocator( self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << " )" << std::endl; std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif delete self->m_pycxx_object; _self->ob_type->tp_free( _self ); } public: static PyTypeObject *type_object() { return behaviors().type_object(); } static Object type() { return Object( reinterpret_cast( behaviors().type_object() ) ); } static bool check( PyObject *p ) { // is p a me or a derived me switch( PyObject_IsInstance( p, reinterpret_cast( type_object() ) ) ) { default: case -1: throw Exception(); case 0: return false; case 1: return true; } } static bool check( const Object &ob ) { return check( ob.ptr() ); } virtual PyObject *selfPtr() { return reinterpret_cast( m_class_instance ); } virtual Object self() { return Object( reinterpret_cast( m_class_instance ) ); } protected: private: PythonClassInstance *m_class_instance; private: // // prevent the compiler generating these unwanted functions // explicit PythonClass( const PythonClass &other ); void operator=( const PythonClass &rhs ); }; // // ExtensionObject is an Object that will accept only T's. // template class PythonClassObject: public Object { public: explicit PythonClassObject( PyObject *pyob ) : Object( pyob ) { validate(); } PythonClassObject( const PythonClassObject &other ) : Object( *other ) { validate(); } PythonClassObject( const Object &other ) : Object( *other ) { validate(); } PythonClassObject &operator=( const Object &rhs ) { *this = *rhs; return *this; } PythonClassObject &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return( pyob && T::check( pyob ) ); } // // Obtain a pointer to the PythonExtension object // T *getCxxObject( void ) { return dynamic_cast< T * >( getPythonExtensionBase( ptr() ) ); } }; } // Namespace Py // End of __CXX_ExtensionClass__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/Objects.hxx000644 000765 000024 00000277457 13662723705 022535 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Objects__h #define __CXX_Objects__h #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Config.hxx" #include "CXX/Exception.hxx" #include #include STR_STREAM #include #include #include #include #include namespace Py { void ifPyErrorThrowCxxException(); typedef PyCxx_ssize_t sequence_index_type; // type of an index into a sequence // Forward declarations class Object; class Type; template class SeqBase; class String; class List; template class MapBase; class Tuple; class Dict; // new_reference_to also overloaded below on Object inline PyObject* new_reference_to(PyObject* p) { Py::_XINCREF(p); return p; } // returning Null() from an extension method triggers a // Python exception inline PyObject* Null() { return (static_cast(0)); } //===========================================================================// // class Object // The purpose of this class is to serve as the most general kind of // Python object, for the purpose of writing C++ extensions in Python // Objects hold a PyObject* which they own. This pointer is always a // valid pointer to a Python object. In children we must maintain this behavior. // // Instructions on how to make your own class MyType descended from Object: // (0) Pick a base class, either Object or perhaps SeqBase or MapBase. // This example assumes Object. // (1) Write a routine int MyType_Check (PyObject *) modeled after PyInt_Check, // PyFloat_Check, etc. // (2) Add method accepts: // virtual bool accepts (PyObject *pyob) const { // return pyob && MyType_Check (pyob); // } // (3) Include the following constructor and copy constructor // /* explicit MyType (PyObject *pyob): Object(pyob) { validate(); } MyType(const Object& other): Object(other.ptr()) { validate(); } */ // Alernate version for the constructor to allow for construction from owned pointers: /* explicit MyType (PyObject *pyob) : Object(pyob) { validate(); } */ // You may wish to add other constructors; see the classes below for examples. // Each constructor must use "set" to set the pointer // and end by validating the pointer you have created. // (4) Each class needs at least these two assignment operators: /* MyType& operator= (const Object& rhs) { return (*this = *rhs); } Mytype& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set(rhsp); return *this; } */ // Note on accepts: constructors call the base class // version of a virtual when calling the base class constructor, // so the test has to be done explicitly in a descendent. // If you are inheriting from PythonExtension to define an object // note that it contains PythonExtension::check // which you can use in accepts when writing a wrapper class. // See Demo/range.h and Demo/range.cxx for an example. class Object { private: // the pointer to the Python object // Only Object sets this directly. // The default constructor for Object sets it to Py_None and // child classes must use "set" to set it // PyObject* p; protected: void set (PyObject* pyob, bool owned = false) { release(); p = pyob; if (!owned) { Py::_XINCREF (p); } validate(); } void release () { Py::_XDECREF (p); p = 0; } void validate(); public: // Constructor acquires new ownership of pointer unless explicitly told not to. explicit Object (PyObject* pyob=Py::_None(), bool owned = false) : p(pyob) { if(!owned) { Py::_XINCREF (p); } validate(); } // Copy constructor acquires new ownership of pointer Object (const Object& ob) : p(ob.p) { Py::_XINCREF (p); validate(); } // Assignment acquires new ownership of pointer Object& operator= (const Object& rhs) { set(rhs.p); return *this; } Object& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Destructor virtual ~Object () { release (); } // Loaning the pointer to others, retain ownership PyObject* operator* () const { return p; } // Explicit reference_counting changes void increment_reference_count() { Py::_XINCREF(p); } void decrement_reference_count() { // not allowed to commit suicide, however if(reference_count() == 1) throw RuntimeError("Object::decrement_reference_count error."); Py::_XDECREF(p); } // Would like to call this pointer() but messes up STL in SeqBase PyObject* ptr () const { return p; } // // Queries // // Can pyob be used in this object's constructor? virtual bool accepts (PyObject *) const { // allow any object or NULL return true; } Py_ssize_t reference_count () const { // the reference count return p ? p->ob_refcnt : 0; } Type type () const; // the type object associated with this one String str () const; // the str() representation std::string as_string() const; String repr () const; // the repr () representation List dir () const; // the dir() list bool hasAttr (const std::string& s) const { return PyObject_HasAttrString (p, const_cast(s.c_str())) ? true: false; } Object getAttr (const std::string& s) const { return Object (PyObject_GetAttrString (p, const_cast(s.c_str())), true); } Object callMemberFunction( const std::string& function_name ) const; Object callMemberFunction( const std::string& function_name, const Tuple &args ) const; Object callMemberFunction( const std::string& function_name, const Tuple &args, const Dict &kw ) const; Object getItem (const Object& key) const { return Object (PyObject_GetItem(p, *key), true); } long hashValue () const { return PyObject_Hash (p); } // convert to bool bool as_bool() const { return PyObject_IsTrue( ptr() ) != 0; } bool is(PyObject *pother) const { // identity test return p == pother; } bool is(const Object& other) const { // identity test return p == other.p; } bool isNull() const { return p == NULL; } bool isNone() const { return p == _None(); } bool isCallable () const { return PyCallable_Check (p) != 0; } bool isInstance () const { return PyInstance_Check (p) != 0; } bool isDict () const { return Py::_Dict_Check (p); } bool isList () const { return Py::_List_Check (p); } bool isMapping () const { return PyMapping_Check (p) != 0; } bool isNumeric () const { return PyNumber_Check (p) != 0; } bool isSequence () const { return PySequence_Check (p) != 0; } bool isTrue () const { return PyObject_IsTrue (p) != 0; } bool isType (const Type& t) const; bool isTuple() const { return Py::_Tuple_Check(p); } bool isString() const { return Py::_String_Check(p) || Py::_Unicode_Check(p); } bool isUnicode() const { return Py::_Unicode_Check( p ); } bool isBoolean() const { return Py::_Boolean_Check( p ); } // Commands void setAttr (const std::string& s, const Object& value) { if(PyObject_SetAttrString (p, const_cast(s.c_str()), *value) == -1) ifPyErrorThrowCxxException(); } void delAttr (const std::string& s) { if(PyObject_DelAttrString (p, const_cast(s.c_str())) == -1) ifPyErrorThrowCxxException(); } // PyObject_SetItem is too weird to be using from C++ // so it is intentionally omitted. void delItem (const Object& key) { if(PyObject_DelItem(p, *key) == -1) ifPyErrorThrowCxxException(); } // Equality and comparison use PyObject_RichCompareBool bool operator==(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_EQ); ifPyErrorThrowCxxException(); return k != 0; } bool operator!=(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_NE); ifPyErrorThrowCxxException(); return k != 0; } bool operator>=(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_GE); ifPyErrorThrowCxxException(); return k != 0; } bool operator<=(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_LE); ifPyErrorThrowCxxException(); return k != 0; } bool operator<(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_LT); ifPyErrorThrowCxxException(); return k != 0; } bool operator>(const Object& o2) const { int k = PyObject_RichCompareBool (p, *o2, Py_GT); ifPyErrorThrowCxxException(); return k != 0; } }; // End of class Object inline PyObject* new_reference_to(const Object& g) { PyObject* p = g.ptr(); Py::_XINCREF(p); return p; } // Nothing() is what an extension method returns if // there is no other return value. inline Object Nothing() { return Object(Py::_None()); } // Python special None value inline Object None() { return Object(Py::_None()); } // Python special Boolean values inline Object False() { return Object(Py::_False()); } inline Object True() { return Object(Py::_True()); } // TMM: 31May'01 - Added the #ifndef so I can exlude iostreams. #ifndef CXX_NO_IOSTREAMS std::ostream& operator<< (std::ostream& os, const Object& ob); #endif // Class Type class Type: public Object { public: explicit Type (PyObject* pyob, bool owned = false): Object(pyob, owned) { validate(); } Type (const Object& ob): Object(*ob) { validate(); } Type(const Type& t): Object(t) { validate(); } Type& operator= (const Object& rhs) { return (*this = *rhs); } Type& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Type_Check (pyob); } }; // // Convert an owned Python pointer into a CXX Object // inline Object asObject (PyObject *p) { return Object(p, true); } // =============================================== // class boolean class Boolean: public Object { public: // Constructor Boolean (PyObject *pyob, bool owned = false) : Object (pyob, owned) { validate(); } Boolean (const Boolean& ob): Object(*ob) { validate(); } // create from bool Boolean (bool v=false) { set(PyBool_FromLong(v ? 1 : 0), true); validate(); } explicit Boolean (const Object& ob) : Object( *ob ) { validate(); } // Assignment increases reference count on pointer Boolean& operator= (const Object& rhs) { return (*this = *rhs); } Boolean& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && PyObject_IsTrue(pyob) != -1; } // convert to long operator bool() const { return PyObject_IsTrue (ptr()) != 0; } Boolean& operator= (bool v) { set (PyBool_FromLong (v ? 1 : 0), true); return *this; } }; // =============================================== // class Int class Int: public Object { public: // Constructor Int (PyObject *pyob, bool owned = false): Object (pyob, owned) { validate(); } Int (const Int& ob): Object(*ob) { validate(); } // create from long Int (long v = 0L): Object(PyInt_FromLong(v), true) { validate(); } // create from int Int (int v) { long w = v; set(PyInt_FromLong(w), true); validate(); } // create from bool Int (bool v) { long w = v ? 1 : 0; set(PyInt_FromLong(w), true); validate(); } explicit Int (const Object& ob) { set(PyNumber_Int(*ob), true); validate(); } // Assignment acquires new ownership of pointer Int& operator= (const Object& rhs) { return (*this = *rhs); } Int& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (PyNumber_Int(rhsp), true); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Int_Check (pyob); } // convert to long operator long() const { return PyInt_AsLong (ptr()); } #ifdef HAVE_LONG_LONG // convert to long long PY_LONG_LONG asLongLong() const { return PyLong_AsLongLong (ptr()); } // convert to unsigned long long unsigned PY_LONG_LONG asUnsignedLongLong() const { return PyLong_AsUnsignedLongLong (ptr()); } #endif // assign from an int Int& operator= (int v) { set (PyInt_FromLong (long(v)), true); return *this; } // assign from long Int& operator= (long v) { set (PyInt_FromLong (v), true); return *this; } #ifdef HAVE_LONG_LONG // assign from long long Int& operator= (PY_LONG_LONG v) { set (PyLong_FromLongLong (v), true); return *this; } // assign from unsigned long long Int& operator= (unsigned PY_LONG_LONG v) { set (PyLong_FromUnsignedLongLong (v), true); return *this; } #endif }; // =============================================== // class Long class Long: public Object { public: // Constructor explicit Long (PyObject *pyob, bool owned = false) : Object (pyob, owned) { validate(); } Long (const Long& ob) : Object(ob.ptr()) { validate(); } // try to create from any object explicit Long (const Object& ob) : Object(PyNumber_Long(*ob), true) { validate(); } // create from long explicit Long (long v = 0L) : Object(PyLong_FromLong(v), true) { validate(); } // create from unsigned long explicit Long (unsigned long v) : Object(PyLong_FromUnsignedLong(v), true) { validate(); } // create from int explicit Long (int v) : Object(PyLong_FromLong(static_cast(v)), true) { validate(); } #ifdef HAVE_LONG_LONG // create from long long explicit Long( PY_LONG_LONG v ) : Object( PyLong_FromLongLong( v ), true ) { validate(); } // create from unsigned long long explicit Long( unsigned PY_LONG_LONG v ) : Object( PyLong_FromUnsignedLongLong( v ), true ) { validate(); } #endif // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Long_Check (pyob); } // Assignment acquires new ownership of pointer Long& operator= (const Object& rhs) { return *this = *rhs; } Long& operator= (PyObject* rhsp) { if(ptr() != rhsp) set (PyNumber_Long(rhsp), true); return *this; } // assign from an int Long& operator= (int v) { set(PyLong_FromLong (long(v)), true); return *this; } // assign from long Long& operator= (long v) { set(PyLong_FromLong (v), true); return *this; } // assign from unsigned long Long& operator= (unsigned long v) { set(PyLong_FromUnsignedLong (v), true); return *this; } #ifdef HAVE_LONG_LONG Long &operator=( PY_LONG_LONG v ) { set( PyLong_FromLongLong( v ), true ); return *this; } Long &operator=( unsigned PY_LONG_LONG v ) { set( PyLong_FromUnsignedLongLong( v ), true ); return *this; } #endif // convert to long long as_long() const { return PyLong_AsLong( ptr() ); } operator long() const { return as_long(); } operator int() const { return static_cast( as_long() ); } // convert to unsigned long as_unsigned_long() const { return PyLong_AsUnsignedLong( ptr() ); } // convert to unsigned operator unsigned long() const { return as_unsigned_long(); } double as_double() const { return PyLong_AsDouble( ptr() ); } operator double() const { return as_double(); } #ifdef HAVE_LONG_LONG PY_LONG_LONG as_long_long() const { return PyLong_AsLongLong( ptr() ); } operator PY_LONG_LONG() const { return as_long_long(); } unsigned PY_LONG_LONG as_unsigned_long_long() const { return PyLong_AsUnsignedLongLong( ptr() ); } operator unsigned PY_LONG_LONG() const { return as_unsigned_long_long(); } #endif // prefix ++ Long operator++() { set( PyNumber_Add( ptr(), *Long( 1 ) ) ); return *this; } // postfix ++ Long operator++( int ) { Long a = *this; set( PyNumber_Add( ptr(), *Long( 1 ) ) ); return a; } // prefix -- Long operator--() { set( PyNumber_Subtract( ptr(), *Long( 1 ) ) ); return *this; } // postfix -- Long operator--( int ) { Long a = *this; set( PyNumber_Subtract( ptr(), *Long( 1 ) ) ); return a; } }; #ifdef HAVE_LONG_LONG // =============================================== // class LongLong class LongLong: public Object { public: // Constructor explicit LongLong (PyObject *pyob, bool owned = false): Object (pyob, owned) { validate(); } LongLong (const LongLong& ob): Object(ob.ptr()) { validate(); } // create from long long explicit LongLong (PY_LONG_LONG v = 0L) : Object(PyLong_FromLongLong(v), true) { validate(); } // create from unsigned long long explicit LongLong (unsigned PY_LONG_LONG v) : Object(PyLong_FromUnsignedLongLong(v), true) { validate(); } // create from long explicit LongLong (long v) : Object(PyLong_FromLongLong(v), true) { validate(); } // create from unsigned long explicit LongLong (unsigned long v) : Object(PyLong_FromUnsignedLongLong(v), true) { validate(); } // create from int explicit LongLong (int v) : Object(PyLong_FromLongLong(static_cast(v)), true) { validate(); } // try to create from any object LongLong (const Object& ob) : Object(PyNumber_Long(*ob), true) { validate(); } // Assignment acquires new ownership of pointer LongLong& operator= (const Object& rhs) { return (*this = *rhs); } LongLong& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (PyNumber_Long(rhsp), true); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Long_Check (pyob); } // convert to long long operator PY_LONG_LONG() const { return PyLong_AsLongLong (ptr()); } // convert to unsigned long operator unsigned PY_LONG_LONG() const { return PyLong_AsUnsignedLongLong (ptr()); } // convert to long operator long() const { return PyLong_AsLong (ptr()); } // convert to unsigned operator unsigned long() const { return PyLong_AsUnsignedLong (ptr()); } operator double() const { return PyLong_AsDouble (ptr()); } // assign from an int LongLong& operator= (int v) { set(PyLong_FromLongLong (long(v)), true); return *this; } // assign from long long LongLong& operator= (PY_LONG_LONG v) { set(PyLong_FromLongLong (v), true); return *this; } // assign from unsigned long long LongLong& operator= (unsigned PY_LONG_LONG v) { set(PyLong_FromUnsignedLongLong (v), true); return *this; } // assign from long LongLong& operator= (long v) { set(PyLong_FromLongLong (v), true); return *this; } // assign from unsigned long LongLong& operator= (unsigned long v) { set(PyLong_FromUnsignedLongLong (v), true); return *this; } }; #endif // =============================================== // class Float // class Float: public Object { public: // Constructor explicit Float (PyObject *pyob, bool owned = false): Object(pyob, owned) { validate(); } Float (const Float& f): Object(f) { validate(); } // make from double explicit Float (double v=0.0) : Object(PyFloat_FromDouble (v), true) { validate(); } // try to make from any object Float (const Object& ob) : Object(PyNumber_Float(*ob), true) { validate(); } Float& operator= (const Object& rhs) { return (*this = *rhs); } Float& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (PyNumber_Float(rhsp), true); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Float_Check (pyob); } // convert to double operator double () const { return PyFloat_AsDouble (ptr()); } // assign from a double Float& operator= (double v) { set(PyFloat_FromDouble (v), true); return *this; } // assign from an int Float& operator= (int v) { set(PyFloat_FromDouble (double(v)), true); return *this; } // assign from long Float& operator= (long v) { set(PyFloat_FromDouble (double(v)), true); return *this; } // assign from an Int Float& operator= (const Int& iob) { set(PyFloat_FromDouble (double(long(iob))), true); return *this; } }; // =============================================== // class Complex class Complex: public Object { public: // Constructor explicit Complex (PyObject *pyob, bool owned = false): Object(pyob, owned) { validate(); } Complex (const Complex& f): Object(f) { validate(); } // make from double explicit Complex (double v=0.0, double w=0.0) :Object(PyComplex_FromDoubles (v, w), true) { validate(); } Complex& operator= (const Object& rhs) { return (*this = *rhs); } Complex& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Complex_Check (pyob); } // convert to Py_complex operator Py_complex () const { return PyComplex_AsCComplex (ptr()); } // assign from a Py_complex Complex& operator= (const Py_complex& v) { set(PyComplex_FromCComplex (v), true); return *this; } // assign from a double Complex& operator= (double v) { set(PyComplex_FromDoubles (v, 0.0), true); return *this; } // assign from an int Complex& operator= (int v) { set(PyComplex_FromDoubles (double(v), 0.0), true); return *this; } // assign from long Complex& operator= (long v) { set(PyComplex_FromDoubles (double(v), 0.0), true); return *this; } // assign from an Int Complex& operator= (const Int& iob) { set(PyComplex_FromDoubles (double(long(iob)), 0.0), true); return *this; } double real() const { return PyComplex_RealAsDouble(ptr()); } double imag() const { return PyComplex_ImagAsDouble(ptr()); } }; // Sequences // Sequences are here represented as sequences of items of type T. // The base class SeqBase represents that. // In basic Python T is always "Object". // seqref is what you get if you get elements from a non-const SeqBase. // Note: seqref could probably be a nested class in SeqBase but that might stress // some compilers needlessly. Simlarly for mapref later. // While this class is not intended for enduser use, it needs some public // constructors for the benefit of the STL. // See Scott Meyer's More Essential C++ for a description of proxies. // This application is even more complicated. We are doing an unusual thing // in having a double proxy. If we want the STL to work // properly we have to compromise by storing the rvalue inside. The // entire Object API is repeated so that things like s[i].isList() will // work properly. // Still, once in a while a weird compiler message may occur using expressions like x[i] // Changing them to Object(x[i]) helps the compiler to understand that the // conversion of a seqref to an Object is wanted. template class seqref { protected: SeqBase& s; // the sequence sequence_index_type offset; // item number T the_item; // lvalue public: seqref (SeqBase& seq, sequence_index_type j) : s(seq), offset(j), the_item (s.getItem(j)) {} seqref (const seqref& range) : s(range.s), offset(range.offset), the_item(range.the_item) {} // TMM: added this seqref ctor for use with STL algorithms seqref (Object& obj) : s(dynamic_cast< SeqBase&>(obj)) , offset( 0 ) , the_item(s.getItem(offset)) {} ~seqref() {} operator T() const { // rvalue return the_item; } seqref& operator=(const seqref& rhs) { //used as lvalue the_item = rhs.the_item; s.setItem(offset, the_item); return *this; } seqref& operator=(const T& ob) { // used as lvalue the_item = ob; s.setItem(offset, ob); return *this; } // forward everything else to the item PyObject* ptr () const { return the_item.ptr(); } int reference_count () const { // the reference count return the_item.reference_count(); } Type type () const { return the_item.type(); } String str () const; String repr () const; bool hasAttr (const std::string& attr_name) const { return the_item.hasAttr(attr_name); } Object getAttr (const std::string& attr_name) const { return the_item.getAttr(attr_name); } Object getItem (const Object& key) const { return the_item.getItem(key); } long hashValue () const { return the_item.hashValue(); } bool isCallable () const { return the_item.isCallable(); } bool isInstance () const { return the_item.isInstance(); } bool isDict () const { return the_item.isDict(); } bool isList () const { return the_item.isList(); } bool isMapping () const { return the_item.isMapping(); } bool isNumeric () const { return the_item.isNumeric(); } bool isSequence () const { return the_item.isSequence(); } bool isTrue () const { return the_item.isTrue(); } bool isType (const Type& t) const { return the_item.isType (t); } bool isTuple() const { return the_item.isTuple(); } bool isString() const { return the_item.isString(); } // Commands void setAttr (const std::string& attr_name, const Object& value) { the_item.setAttr(attr_name, value); } void delAttr (const std::string& attr_name) { the_item.delAttr(attr_name); } void delItem (const Object& key) { the_item.delItem(key); } bool operator==(const Object& o2) const { return the_item == o2; } bool operator!=(const Object& o2) const { return the_item != o2; } bool operator>=(const Object& o2) const { return the_item >= o2; } bool operator<=(const Object& o2) const { return the_item <= o2; } bool operator<(const Object& o2) const { return the_item < o2; } bool operator>(const Object& o2) const { return the_item > o2; } }; // end of seqref // class SeqBase // ...the base class for all sequence types template class SeqBase: public Object { public: // STL definitions typedef PyCxx_ssize_t size_type; typedef seqref reference; typedef T const_reference; typedef seqref* pointer; typedef int difference_type; typedef T value_type; // TMM: 26Jun'01 virtual size_type max_size() const { return static_cast( std::string::npos ); // why this constant - its not from python? } virtual size_type capacity() const { return size(); } virtual void swap( SeqBase &c ) { SeqBase temp = c; c = ptr(); set(temp.ptr()); } virtual size_type size() const { return PySequence_Length (ptr()); } explicit SeqBase () : Object( PyTuple_New( 0 ), true ) { validate(); } explicit SeqBase (PyObject* pyob, bool owned=false) : Object( pyob, owned ) { validate(); } SeqBase (const Object& ob): Object(ob) { validate(); } // Assignment acquires new ownership of pointer SeqBase& operator= (const Object& rhs) { return (*this = *rhs); } SeqBase& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } virtual bool accepts (PyObject *pyob) const { return pyob && PySequence_Check (pyob); } Py_ssize_t length () const { return PySequence_Length (ptr()); } // Element access const T operator[](sequence_index_type index) const { return getItem(index); } seqref operator[](sequence_index_type index) { return seqref(*this, index); } virtual T getItem (sequence_index_type i) const { return T(asObject(PySequence_GetItem (ptr(), i))); } virtual void setItem (sequence_index_type i, const T& ob) { if (PySequence_SetItem (ptr(), i, *ob) == -1) { ifPyErrorThrowCxxException(); } } SeqBase repeat (int count) const { return SeqBase (PySequence_Repeat (ptr(), count), true); } SeqBase concat (const SeqBase& other) const { return SeqBase (PySequence_Concat(ptr(), *other), true); } // more STL compatability const T front () const { return getItem(0); } seqref front() { return seqref(*this, 0); } const T back() const { return getItem(size()-1); } seqref back() { return seqref(*this, size()-1); } void verify_length( size_type required_size ) const { if (size() != required_size) throw IndexError ("Unexpected SeqBase length."); } void verify_length( size_type min_size, size_type max_size ) const { size_type n = size(); if (n < min_size || n > max_size) throw IndexError ("Unexpected SeqBase length."); } class iterator: public random_access_iterator_parent(seqref) { protected: friend class SeqBase; SeqBase* seq; sequence_index_type count; public: ~iterator () {} iterator () : seq( 0 ) , count( 0 ) {} iterator (SeqBase* s, sequence_index_type where) : seq( s ) , count( where ) {} iterator (const iterator& other) : seq( other.seq ) , count( other.count ) {} bool eql (const iterator& other) const { return (seq->ptr() == other.seq->ptr()) && (count == other.count); } bool neq (const iterator& other) const { return (seq->ptr() != other.seq->ptr()) || (count != other.count); } bool lss (const iterator& other) const { return (count < other.count); } bool gtr (const iterator& other) const { return (count > other.count); } bool leq (const iterator& other) const { return (count <= other.count); } bool geq (const iterator& other) const { return (count >= other.count); } seqref operator*() { return seqref(*seq, count); } seqref operator[] (sequence_index_type i) { return seqref(*seq, count + i); } iterator& operator=(const iterator& other) { if (this == &other) return *this; seq = other.seq; count = other.count; return *this; } iterator operator+(sequence_index_type n) const { return iterator(seq, count + n); } iterator operator-(sequence_index_type n) const { return iterator(seq, count - n); } iterator& operator+=(sequence_index_type n) { count = count + n; return *this; } iterator& operator-=(sequence_index_type n) { count = count - n; return *this; } int operator-(const iterator& other) const { if (*seq != *other.seq) throw RuntimeError ("SeqBase::iterator comparison error"); return count - other.count; } // prefix ++ iterator& operator++ () { count++; return *this; } // postfix ++ iterator operator++ (int) { return iterator(seq, count++); } // prefix -- iterator& operator-- () { count--; return *this; } // postfix -- iterator operator-- (int) { return iterator(seq, count--); } std::string diagnose() const { std::OSTRSTREAM oss; oss << "iterator diagnosis " << seq << ", " << count << std::ends; return std::string(oss.str()); } }; // end of class SeqBase::iterator iterator begin () { return iterator(this, 0); } iterator end () { return iterator(this, length()); } class const_iterator : public random_access_iterator_parent(const Object) { protected: friend class SeqBase; const SeqBase* seq; sequence_index_type count; private: const_iterator (const SeqBase* s, sequence_index_type where) : seq( s ) , count( where ) {} public: ~const_iterator () {} const_iterator () : seq( 0 ) , count( 0 ) {} const_iterator(const const_iterator& other) : seq( other.seq ) , count( other.count ) {} const T operator*() const { return seq->getItem(count); } const T operator[] (sequence_index_type i) const { return seq->getItem(count + i); } const_iterator& operator=(const const_iterator& other) { if (this == &other) return *this; seq = other.seq; count = other.count; return *this; } const_iterator operator+(sequence_index_type n) const { return const_iterator(seq, count + n); } bool eql (const const_iterator& other) const { return (seq->ptr() == other.seq->ptr()) && (count == other.count); } bool neq (const const_iterator& other) const { return (seq->ptr() != other.seq->ptr()) || (count != other.count); } bool lss (const const_iterator& other) const { return (count < other.count); } bool gtr (const const_iterator& other) const { return (count > other.count); } bool leq (const const_iterator& other) const { return (count <= other.count); } bool geq (const const_iterator& other) const { return (count >= other.count); } const_iterator operator-(sequence_index_type n) { return const_iterator(seq, count - n); } const_iterator& operator+=(sequence_index_type n) { count = count + n; return *this; } const_iterator& operator-=(sequence_index_type n) { count = count - n; return *this; } int operator-(const const_iterator& other) const { if (*seq != *other.seq) throw RuntimeError ("SeqBase::const_iterator::- error"); return count - other.count; } // prefix ++ const_iterator& operator++ () { count++; return *this; } // postfix ++ const_iterator operator++ (int) { return const_iterator(seq, count++); } // prefix -- const_iterator& operator-- () { count--; return *this; } // postfix -- const_iterator operator-- (int) { return const_iterator(seq, count--); } }; // end of class SeqBase::const_iterator const_iterator begin () const { return const_iterator(this, 0); } const_iterator end () const { return const_iterator(this, length()); } }; // Here's an important typedef you might miss if reading too fast... typedef SeqBase Sequence; template bool operator==(const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator!=(const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator< (const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator> (const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator<=(const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator>=(const EXPLICIT_TYPENAME SeqBase::iterator& left, const EXPLICIT_TYPENAME SeqBase::iterator& right); template bool operator==(const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); template bool operator!=(const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); template bool operator< (const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); template bool operator> (const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); template bool operator<=(const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); template bool operator>=(const EXPLICIT_TYPENAME SeqBase::const_iterator& left, const EXPLICIT_TYPENAME SeqBase::const_iterator& right); extern bool operator==(const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator!=(const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator< (const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator> (const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator<=(const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator>=(const Sequence::iterator& left, const Sequence::iterator& right); extern bool operator==(const Sequence::const_iterator& left, const Sequence::const_iterator& right); extern bool operator!=(const Sequence::const_iterator& left, const Sequence::const_iterator& right); extern bool operator< (const Sequence::const_iterator& left, const Sequence::const_iterator& right); extern bool operator> (const Sequence::const_iterator& left, const Sequence::const_iterator& right); extern bool operator<=(const Sequence::const_iterator& left, const Sequence::const_iterator& right); extern bool operator>=(const Sequence::const_iterator& left, const Sequence::const_iterator& right); // ================================================== // class Char // Python strings return strings as individual elements. // I'll try having a class Char which is a String of length 1 // typedef std::basic_string unicodestring; extern Py_UNICODE unicode_null_string[1]; class Char: public Object { public: explicit Char (PyObject *pyob, bool owned = false): Object(pyob, owned) { validate(); } Char (const Object& ob): Object(ob) { validate(); } Char (const std::string& v = "") :Object(PyString_FromStringAndSize( const_cast(v.c_str()), 1 ), true) { validate(); } Char (char v) : Object(PyString_FromStringAndSize (&v, 1), true) { validate(); } Char (Py_UNICODE v) : Object(PyUnicode_FromUnicode (&v, 1), true) { validate(); } // Assignment acquires new ownership of pointer Char& operator= (const Object& rhs) { return (*this = *rhs); } Char& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return (pyob && (Py::_String_Check(pyob) || Py::_Unicode_Check(pyob)) && PySequence_Length (pyob) == 1); } // Assignment from C string Char& operator= (const std::string& v) { set(PyString_FromStringAndSize (const_cast(v.c_str()),1), true); return *this; } Char& operator= (char v) { set(PyString_FromStringAndSize (&v, 1), true); return *this; } Char& operator= (const unicodestring& v) { set(PyUnicode_FromUnicode (const_cast(v.data()),1), true); return *this; } Char& operator= (Py_UNICODE v) { set(PyUnicode_FromUnicode (&v, 1), true); return *this; } long ord() { if( Py::_Unicode_Check( ptr() ) ) { Py_UNICODE *unicode = PyUnicode_AS_UNICODE( ptr() ); return static_cast( unicode[0] ); } else { unsigned char *str = reinterpret_cast( PyString_AS_STRING( ptr() ) ); return static_cast( str[0] ); } } // Conversion operator String() const; operator std::string () const { return std::string(PyString_AsString (ptr())); } }; #ifdef PYCXX_PYTHON_2TO3 // String and Bytes compatible with Python3 version in 6.0.0 PyCXX class Bytes; class String: public SeqBase { public: virtual size_type capacity() const { return max_size(); } explicit String( PyObject *pyob, bool owned = false) : SeqBase( pyob, owned ) { validate(); } String( const Object& ob): SeqBase(ob) { validate(); } String() : SeqBase( PyString_FromStringAndSize( "", 0 ), true ) { validate(); } String( const std::string& v ) : SeqBase( PyString_FromStringAndSize( const_cast(v.data()), v.length() ), true ) { validate(); } String( const Py_UNICODE *s, int length ) : SeqBase( PyUnicode_FromUnicode( s, length ), true ) { validate(); } String( const char *s, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s, strlen( s ), encoding, error ), true ) { validate(); } String( const char *s, int len, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s, len, encoding, error ), true ) { validate(); } String( const std::string &s, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s.c_str(), s.length(), encoding, error ), true ) { validate(); } String( const char *v, int vsize ) : SeqBase(PyString_FromStringAndSize( const_cast(v), vsize ), true ) { validate(); } String( const char *v ) : SeqBase( PyString_FromString( v ), true ) { validate(); } // Assignment acquires new ownership of pointer String &operator=( const Object &rhs ) { return *this = *rhs; } String& operator= (PyObject *rhsp) { if( ptr() == rhsp ) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && (Py::_String_Check(pyob) || Py::_Unicode_Check(pyob)); } // Assignment from C string String& operator=( const std::string &v ) { set( PyString_FromStringAndSize( const_cast( v.data() ), v.length() ), true ); return *this; } String& operator=( const unicodestring &v ) { set( PyUnicode_FromUnicode( const_cast( v.data() ), v.length() ), true ); return *this; } // Encode Bytes encode( const char *encoding, const char *error="strict" ) const; // Queries virtual size_type size() const { if( isUnicode() ) { return PyUnicode_GET_SIZE (ptr()); } else { return PyString_Size (ptr()); } } operator std::string() const { return as_std_string( "utf-8" ); } std::string as_std_string( const char *encoding, const char *error="strict" ) const; unicodestring as_unicodestring() const { if( isUnicode() ) { return unicodestring( PyUnicode_AS_UNICODE( ptr() ), PyUnicode_GET_SIZE( ptr() ) ); } else { throw TypeError("can only return unicodestring from Unicode object"); } } const Py_UNICODE *unicode_data() const { if( isUnicode() ) { return PyUnicode_AS_UNICODE( ptr() ); } else { throw TypeError("can only return unicode_data from Unicode object"); } } }; class Bytes: public SeqBase { public: virtual size_type capacity() const { return max_size(); } explicit Bytes (PyObject *pyob, bool owned = false) : SeqBase(pyob, owned) { validate(); } Bytes (const Object& ob): SeqBase(ob) { validate(); } Bytes() : SeqBase( PyString_FromStringAndSize( "", 0 ), true ) { validate(); } Bytes( const std::string& v ) : SeqBase( PyString_FromStringAndSize( const_cast(v.data()), v.length()), true ) { validate(); } Bytes( const char *v, size_type vsize ) : SeqBase(PyString_FromStringAndSize( const_cast(v), vsize ), true ) { validate(); } Bytes( const char *v ) : SeqBase( PyString_FromString( v ), true ) { validate(); } // Assignment acquires new ownership of pointer Bytes &operator= ( const Object& rhs ) { return *this = *rhs; } Bytes &operator= (PyObject *rhsp) { if( ptr() == rhsp ) return *this; set (rhsp); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && (Py::_String_Check( pyob ) || Py::_Unicode_Check( pyob )); } // Assignment from C string Bytes &operator= (const std::string& v) { set( PyString_FromStringAndSize( const_cast( v.data() ), v.length() ), true ); return *this; } Bytes &operator= (const unicodestring& v) { set( PyUnicode_FromUnicode( const_cast( v.data() ), v.length() ), true ); return *this; } String decode( const char *encoding, const char *error="strict" ) { return Object( PyString_AsDecodedObject( ptr(), encoding, error ), true ); } // Queries virtual size_type size () const { if( isUnicode() ) { return PyUnicode_GET_SIZE (ptr()); } else { return PyString_Size (ptr()); } } operator std::string () const { return as_std_string(); } std::string as_std_string() const { if( isUnicode() ) { throw TypeError("cannot return std::string from Unicode object"); } else { return std::string( PyString_AsString( ptr() ), static_cast( PyString_Size( ptr() ) ) ); } } unicodestring as_unicodestring() const { if( isUnicode() ) { return unicodestring( PyUnicode_AS_UNICODE( ptr() ), static_cast( PyUnicode_GET_SIZE( ptr() ) ) ); } else { throw TypeError("can only return unicodestring from Unicode object"); } } }; #else // original PyCXX 5.4.x version of String class String: public SeqBase { public: virtual size_type capacity() const { return max_size(); } explicit String (PyObject *pyob, bool owned = false): SeqBase(pyob, owned) { validate(); } String (const Object& ob): SeqBase(ob) { validate(); } String() : SeqBase( PyString_FromStringAndSize( "", 0 ), true ) { validate(); } String( const std::string& v ) : SeqBase( PyString_FromStringAndSize( const_cast(v.data()), v.length() ), true ) { validate(); } String( const char *s, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s, strlen( s ), encoding, error ), true ) { validate(); } String( const char *s, size_type len, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s, len, encoding, error ), true ) { validate(); } String( const std::string &s, const char *encoding, const char *error="strict" ) : SeqBase( PyUnicode_Decode( s.c_str(), s.length(), encoding, error ), true ) { validate(); } String( const char *v, size_type vsize ) : SeqBase(PyString_FromStringAndSize( const_cast(v), vsize ), true ) { validate(); } String( const char* v ) : SeqBase( PyString_FromString( v ), true ) { validate(); } // Assignment acquires new ownership of pointer String& operator= ( const Object& rhs ) { return *this = *rhs; } String& operator= (PyObject* rhsp) { if( ptr() == rhsp ) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && (Py::_String_Check(pyob) || Py::_Unicode_Check(pyob)); } // Assignment from C string String& operator= (const std::string& v) { set( PyString_FromStringAndSize( const_cast( v.data() ), v.length() ), true ); return *this; } String& operator= (const unicodestring& v) { set( PyUnicode_FromUnicode( const_cast( v.data() ), v.length() ), true ); return *this; } // Encode String encode( const char *encoding, const char *error="strict" ) const { if( isUnicode() ) { return String( PyUnicode_AsEncodedString( ptr(), encoding, error ), true ); } else { return String( PyString_AsEncodedObject( ptr(), encoding, error ), true ); } } String decode( const char *encoding, const char *error="strict" ) { return Object( PyString_AsDecodedObject( ptr(), encoding, error ), true ); } // Queries virtual size_type size () const { if( isUnicode() ) { return PyUnicode_GET_SIZE (ptr()); } else { return PyString_Size (ptr()); } } operator std::string () const { return as_std_string(); } std::string as_std_string() const { if( isUnicode() ) { throw TypeError("cannot return std::string from Unicode object"); } else { return std::string( PyString_AsString( ptr() ), static_cast( PyString_Size( ptr() ) ) ); } } std::string as_std_string( const char *encoding, const char *error="strict" ) const; unicodestring as_unicodestring() const { if( isUnicode() ) { return unicodestring( PyUnicode_AS_UNICODE( ptr() ), static_cast( PyUnicode_GET_SIZE( ptr() ) ) ); } else { throw TypeError("can only return unicodestring from Unicode object"); } } }; #endif // ================================================== // class Tuple class Tuple: public Sequence { public: virtual void setItem (sequence_index_type offset, const Object&ob) { // note PyTuple_SetItem is a thief... if(PyTuple_SetItem (ptr(), offset, new_reference_to(ob)) == -1) { ifPyErrorThrowCxxException(); } } // Constructor explicit Tuple (PyObject *pyob, bool owned = false): Sequence (pyob, owned) { validate(); } Tuple (const Object& ob): Sequence(ob) { validate(); } // New tuple of a given size explicit Tuple (int size = 0) { set(PyTuple_New (size), true); validate (); for (sequence_index_type i=0; i < size; i++) { if(PyTuple_SetItem (ptr(), i, new_reference_to(Py::_None())) == -1) { ifPyErrorThrowCxxException(); } } } // Tuple from any sequence explicit Tuple (const Sequence& s) { sequence_index_type limit( sequence_index_type( s.length() ) ); set(PyTuple_New (limit), true); validate(); for(sequence_index_type i=0; i < limit; i++) { if(PyTuple_SetItem (ptr(), i, new_reference_to(s[i])) == -1) { ifPyErrorThrowCxxException(); } } } // Assignment acquires new ownership of pointer Tuple& operator= (const Object& rhs) { return (*this = *rhs); } Tuple& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Tuple_Check (pyob); } Tuple getSlice (int i, int j) const { return Tuple (PySequence_GetSlice (ptr(), i, j), true); } }; class TupleN: public Tuple { public: TupleN() : Tuple( 0 ) { } TupleN( const Object &obj1 ) : Tuple( 1 ) { setItem( 0, obj1 ); } TupleN( const Object &obj1, const Object &obj2 ) : Tuple( 2 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3 ) : Tuple( 3 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4 ) : Tuple( 4 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5 ) : Tuple( 5 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6 ) : Tuple( 6 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7 ) : Tuple( 7 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7, const Object &obj8 ) : Tuple( 8 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); setItem( 7, obj8 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7, const Object &obj8, const Object &obj9 ) : Tuple( 9 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); setItem( 7, obj8 ); setItem( 8, obj9 ); } virtual ~TupleN() { } }; // ================================================== // class List class List: public Sequence { public: // Constructor explicit List (PyObject *pyob, bool owned = false): Sequence(pyob, owned) { validate(); } List (const Object& ob): Sequence(ob) { validate(); } // Creation at a fixed size List (size_type size = 0) { set(PyList_New (size), true); validate(); for (sequence_index_type i=0; i < size; i++) { if(PyList_SetItem (ptr(), i, new_reference_to(Py::_None())) == -1) { ifPyErrorThrowCxxException(); } } } // List from a sequence List (const Sequence& s): Sequence() { size_type n = s.length(); set(PyList_New (n), true); validate(); for (sequence_index_type i=0; i < n; i++) { if(PyList_SetItem (ptr(), i, new_reference_to(s[i])) == -1) { ifPyErrorThrowCxxException(); } } } virtual size_type capacity() const { return max_size(); } // Assignment acquires new ownership of pointer List& operator= (const Object& rhs) { return (*this = *rhs); } List& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_List_Check (pyob); } List getSlice (int i, int j) const { return List (PyList_GetSlice (ptr(), i, j), true); } void setSlice (int i, int j, const Object& v) { if(PyList_SetSlice (ptr(), i, j, *v) == -1) { ifPyErrorThrowCxxException(); } } void append (const Object& ob) { if(PyList_Append (ptr(), *ob) == -1) { ifPyErrorThrowCxxException(); } } void insert (int i, const Object& ob) { if(PyList_Insert (ptr(), i, *ob) == -1) { ifPyErrorThrowCxxException(); } } void sort () { if(PyList_Sort(ptr()) == -1) { ifPyErrorThrowCxxException(); } } void reverse () { if(PyList_Reverse(ptr()) == -1) { ifPyErrorThrowCxxException(); } } }; // Mappings // ================================================== template class mapref { protected: MapBase& s; // the map Object key; // item key T the_item; public: mapref (MapBase& map, const std::string& k) : s(map), the_item() { key = String(k); if(map.hasKey(key)) the_item = map.getItem(key); } mapref (MapBase& map, const Object& k) : s(map), key(k), the_item() { if(map.hasKey(key)) the_item = map.getItem(key); } virtual ~mapref() {} // MapBase stuff // lvalue mapref& operator=(const mapref& other) { if(this == &other) return *this; the_item = other.the_item; s.setItem(key, other.the_item); return *this; } mapref& operator= (const T& ob) { the_item = ob; s.setItem (key, ob); return *this; } // rvalue operator T() const { return the_item; } // forward everything else to the_item PyObject* ptr () const { return the_item.ptr(); } int reference_count () const { // the mapref count return the_item.reference_count(); } Type type () const { return the_item.type(); } String str () const { return the_item.str(); } String repr () const { return the_item.repr(); } bool hasAttr (const std::string& attr_name) const { return the_item.hasAttr(attr_name); } Object getAttr (const std::string& attr_name) const { return the_item.getAttr(attr_name); } Object getItem (const Object& k) const { return the_item.getItem(k); } long hashValue () const { return the_item.hashValue(); } bool isCallable () const { return the_item.isCallable(); } bool isInstance () const { return the_item.isInstance(); } bool isList () const { return the_item.isList(); } bool isMapping () const { return the_item.isMapping(); } bool isNumeric () const { return the_item.isNumeric(); } bool isSequence () const { return the_item.isSequence(); } bool isTrue () const { return the_item.isTrue(); } bool isType (const Type& t) const { return the_item.isType (t); } bool isTuple() const { return the_item.isTuple(); } bool isString() const { return the_item.isString(); } // Commands void setAttr (const std::string& attr_name, const Object& value) { the_item.setAttr(attr_name, value); } void delAttr (const std::string& attr_name) { the_item.delAttr(attr_name); } void delItem (const Object& k) { the_item.delItem(k); } }; // end of mapref // TMM: now for mapref template< class T > bool operator==(const mapref& left, const mapref& right) { return true; // NOT completed. } template< class T > bool operator!=(const mapref& left, const mapref& right) { return true; // not completed. } template class MapBase: public Object { protected: explicit MapBase() {} public: // reference: proxy class for implementing [] // TMM: 26Jun'01 - the types // If you assume that Python mapping is a hash_map... // hash_map::value_type is not assignable, but // (*it).second = data must be a valid expression typedef PyCxx_ssize_t size_type; typedef Object key_type; typedef mapref data_type; typedef std::pair< const T, T > value_type; typedef std::pair< const T, mapref > reference; typedef const std::pair< const T, const T > const_reference; typedef std::pair< const T, mapref > pointer; // Constructor explicit MapBase (PyObject *pyob, bool owned = false): Object(pyob, owned) { validate(); } // TMM: 02Jul'01 - changed MapBase to Object in next line MapBase (const Object& ob): Object(ob) { validate(); } // Assignment acquires new ownership of pointer MapBase& operator= (const Object& rhs) { return (*this = *rhs); } MapBase& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && PyMapping_Check(pyob); } // Clear -- PyMapping Clear is missing // void clear () { List k = keys(); for(List::iterator i = k.begin(); i != k.end(); i++) { delItem(*i); } } virtual Py_ssize_t size() const { return PyMapping_Length (ptr()); } // Element Access T operator[](const std::string& key) const { return getItem(key); } T operator[](const Object& key) const { return getItem(key); } mapref operator[](const std::string& key) { return mapref(*this, key); } mapref operator[](const Object& key) { return mapref(*this, key); } Py_ssize_t length () const { return PyMapping_Length (ptr()); } bool hasKey (const std::string& s) const { return PyMapping_HasKeyString (ptr(),const_cast(s.c_str())) != 0; } bool hasKey (const Object& s) const { return PyMapping_HasKey (ptr(), s.ptr()) != 0; } T getItem (const std::string& s) const { return T( asObject(PyMapping_GetItemString (ptr(),const_cast(s.c_str()))) ); } T getItem (const Object& s) const { return T( asObject(PyObject_GetItem (ptr(), s.ptr())) ); } virtual void setItem (const char *s, const Object& ob) { if (PyMapping_SetItemString (ptr(), const_cast(s), *ob) == -1) { ifPyErrorThrowCxxException(); } } virtual void setItem (const std::string& s, const Object& ob) { if (PyMapping_SetItemString (ptr(), const_cast(s.c_str()), *ob) == -1) { ifPyErrorThrowCxxException(); } } virtual void setItem (const Object& s, const Object& ob) { if (PyObject_SetItem (ptr(), s.ptr(), ob.ptr()) == -1) { ifPyErrorThrowCxxException(); } } void delItem (const std::string& s) { if (PyMapping_DelItemString (ptr(), const_cast(s.c_str())) == -1) { ifPyErrorThrowCxxException(); } } void delItem (const Object& s) { if (PyMapping_DelItem (ptr(), *s) == -1) { ifPyErrorThrowCxxException(); } } // Queries List keys () const { static char keys[] = {'k', 'e', 'y', 's', 0}; return List(PyObject_CallMethod( ptr(), keys, NULL ), true ); } List values () const { // each returned item is a (key, value) pair return List(PyMapping_Values(ptr()), true); } List items () const { return List(PyMapping_Items(ptr()), true); } class iterator { // : public forward_iterator_parent( std::pair ) { protected: typedef std::forward_iterator_tag iterator_category; typedef std::pair< const T, T > value_type; typedef int difference_type; typedef std::pair< const T, mapref > pointer; typedef std::pair< const T, mapref > reference; friend class MapBase; // MapBase *map; List keys; // for iterating over the map sequence_index_type pos; // index into the keys private: iterator( MapBase* m, List k, sequence_index_type p ) : map( m ) , keys( k ) , pos( p ) {} public: ~iterator () {} iterator () : map( 0 ) , keys() , pos() {} iterator (MapBase* m, bool end = false ) : map( m ) , keys( m->keys() ) , pos( end ? keys.length() : 0 ) {} iterator (const iterator& other) : map( other.map ) , keys( other.keys ) , pos( other.pos ) {} reference operator*() { Object key = keys[ pos ]; return std::make_pair(key, mapref(*map,key)); } iterator& operator=(const iterator& other) { if (this == &other) return *this; map = other.map; keys = other.keys; pos = other.pos; return *this; } bool eql(const iterator& right) const { return map->ptr() == right.map->ptr() && pos == right.pos; } bool neq( const iterator& right ) const { return map->ptr() != right.map->ptr() || pos != right.pos; } // pointer operator->() { // return ; // } // prefix ++ iterator& operator++ () { pos++; return *this;} // postfix ++ iterator operator++ (int) { return iterator(map, keys, pos++);} // prefix -- iterator& operator-- () { pos--; return *this;} // postfix -- iterator operator-- (int) { return iterator(map, keys, pos--);} std::string diagnose() const { std::OSTRSTREAM oss; oss << "iterator diagnosis " << map << ", " << pos << std::ends; return std::string(oss.str()); } }; // end of class MapBase::iterator iterator begin () { return iterator(this); } iterator end () { return iterator(this, true); } class const_iterator { protected: typedef std::forward_iterator_tag iterator_category; typedef const std::pair< const T, T > value_type; typedef int difference_type; typedef const std::pair< const T, T > pointer; typedef const std::pair< const T, T > reference; friend class MapBase; const MapBase *map; List keys; // for iterating over the map sequence_index_type pos; // index into the keys private: const_iterator( const MapBase* m, List k, int p ) : map( m ) , keys( k ) , pos( p ) {} public: ~const_iterator () {} const_iterator () : map( 0 ) , keys() , pos() {} const_iterator (const MapBase* m, bool end = false ) : map( m ) , keys( m->keys() ) , pos( end ? keys.length() : 0 ) {} const_iterator(const const_iterator& other) : map( other.map ) , keys( other.keys ) , pos( other.pos ) {} bool eql(const const_iterator& right) const { return map->ptr() == right.map->ptr() && pos == right.pos; } bool neq( const const_iterator& right ) const { return map->ptr() != right.map->ptr() || pos != right.pos; } const_reference operator*() { Object key = keys[ pos ]; return std::make_pair( key, mapref( *map, key ) ); } const_iterator& operator=(const const_iterator& other) { if (this == &other) return *this; map = other.map; keys = other.keys; pos = other.pos; return *this; } // prefix ++ const_iterator& operator++ () { pos++; return *this;} // postfix ++ const_iterator operator++ (int) { return const_iterator(map, keys, pos++);} // prefix -- const_iterator& operator-- () { pos--; return *this;} // postfix -- const_iterator operator-- (int) { return const_iterator(map, keys, pos--);} }; // end of class MapBase::const_iterator const_iterator begin () const { return const_iterator(this); } const_iterator end () const { return const_iterator(this, true); } }; // end of MapBase typedef MapBase Mapping; template bool operator==(const EXPLICIT_TYPENAME MapBase::iterator& left, const EXPLICIT_TYPENAME MapBase::iterator& right); template bool operator!=(const EXPLICIT_TYPENAME MapBase::iterator& left, const EXPLICIT_TYPENAME MapBase::iterator& right); template bool operator==(const EXPLICIT_TYPENAME MapBase::const_iterator& left, const EXPLICIT_TYPENAME MapBase::const_iterator& right); template bool operator!=(const EXPLICIT_TYPENAME MapBase::const_iterator& left, const EXPLICIT_TYPENAME MapBase::const_iterator& right); extern bool operator==(const Mapping::iterator& left, const Mapping::iterator& right); extern bool operator!=(const Mapping::iterator& left, const Mapping::iterator& right); extern bool operator==(const Mapping::const_iterator& left, const Mapping::const_iterator& right); extern bool operator!=(const Mapping::const_iterator& left, const Mapping::const_iterator& right); // ================================================== // class Dict class Dict: public Mapping { public: // Constructor explicit Dict (PyObject *pyob, bool owned=false): Mapping (pyob, owned) { validate(); } Dict (const Object& ob): Mapping(ob) { validate(); } // Creation Dict () { set(PyDict_New (), true); validate(); } // Assignment acquires new ownership of pointer Dict& operator= (const Object& rhs) { return (*this = *rhs); } Dict& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set(rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && Py::_Dict_Check (pyob); } }; class Callable: public Object { public: // Constructor explicit Callable (): Object() {} explicit Callable (PyObject *pyob, bool owned = false): Object (pyob, owned) { validate(); } Callable (const Object& ob): Object(ob) { validate(); } // Assignment acquires new ownership of pointer Callable& operator= (const Object& rhs) { return (*this = *rhs); } Callable& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set (rhsp); return *this; } // Membership virtual bool accepts (PyObject *pyob) const { return pyob && PyCallable_Check (pyob); } // Call Object apply(const Tuple& args) const { PyObject *result = PyObject_CallObject( ptr(), args.ptr() ); if( result == NULL ) { ifPyErrorThrowCxxException(); } return asObject( result ); } // Call with keywords Object apply(const Tuple& args, const Dict& kw) const { PyObject *result = PyEval_CallObjectWithKeywords( ptr(), args.ptr(), kw.ptr() ); if( result == NULL ) { ifPyErrorThrowCxxException(); } return asObject( result ); } Object apply(PyObject* pargs = 0) const { if( pargs == 0 ) { return apply( Tuple() ); } else { return apply( Tuple( pargs ) ); } } }; class Module: public Object { public: explicit Module (PyObject* pyob, bool owned = false): Object (pyob, owned) { validate(); } // Construct from module name explicit Module (const std::string&s): Object() { PyObject *m = PyImport_AddModule( const_cast(s.c_str()) ); set( m, false ); validate (); } // Copy constructor acquires new ownership of pointer Module (const Module& ob): Object(*ob) { validate(); } Module& operator= (const Object& rhs) { return (*this = *rhs); } Module& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set(rhsp); return *this; } Dict getDict() { return Dict(PyModule_GetDict(ptr())); // Caution -- PyModule_GetDict returns borrowed reference! } }; // Call function helper inline Object Object::callMemberFunction( const std::string &function_name ) const { Callable target( getAttr( function_name ) ); Tuple args( 0 ); return target.apply( args ); } inline Object Object::callMemberFunction( const std::string &function_name, const Tuple &args ) const { Callable target( getAttr( function_name ) ); return target.apply( args ); } inline Object Object::callMemberFunction( const std::string &function_name, const Tuple &args, const Dict &kw ) const { Callable target( getAttr( function_name ) ); return target.apply( args, kw ); } // Numeric interface inline Object operator+ (const Object& a) { return asObject(PyNumber_Positive(*a)); } inline Object operator- (const Object& a) { return asObject(PyNumber_Negative(*a)); } inline Object abs(const Object& a) { return asObject(PyNumber_Absolute(*a)); } inline std::pair coerce(const Object& a, const Object& b) { PyObject *p1, *p2; p1 = *a; p2 = *b; if(PyNumber_Coerce(&p1,&p2) == -1) { ifPyErrorThrowCxxException(); } return std::pair(asObject(p1), asObject(p2)); } inline Object operator+ (const Object& a, const Object& b) { return asObject(PyNumber_Add(*a, *b)); } inline Object operator+ (const Object& a, int j) { return asObject(PyNumber_Add(*a, *Int(j))); } inline Object operator+ (const Object& a, double v) { return asObject(PyNumber_Add(*a, *Float(v))); } inline Object operator+ (int j, const Object& b) { return asObject(PyNumber_Add(*Int(j), *b)); } inline Object operator+ (double v, const Object& b) { return asObject(PyNumber_Add(*Float(v), *b)); } inline Object operator- (const Object& a, const Object& b) { return asObject(PyNumber_Subtract(*a, *b)); } inline Object operator- (const Object& a, int j) { return asObject(PyNumber_Subtract(*a, *Int(j))); } inline Object operator- (const Object& a, double v) { return asObject(PyNumber_Subtract(*a, *Float(v))); } inline Object operator- (int j, const Object& b) { return asObject(PyNumber_Subtract(*Int(j), *b)); } inline Object operator- (double v, const Object& b) { return asObject(PyNumber_Subtract(*Float(v), *b)); } inline Object operator* (const Object& a, const Object& b) { return asObject(PyNumber_Multiply(*a, *b)); } inline Object operator* (const Object& a, int j) { return asObject(PyNumber_Multiply(*a, *Int(j))); } inline Object operator* (const Object& a, double v) { return asObject(PyNumber_Multiply(*a, *Float(v))); } inline Object operator* (int j, const Object& b) { return asObject(PyNumber_Multiply(*Int(j), *b)); } inline Object operator* (double v, const Object& b) { return asObject(PyNumber_Multiply(*Float(v), *b)); } inline Object operator/ (const Object& a, const Object& b) { return asObject(PyNumber_Divide(*a, *b)); } inline Object operator/ (const Object& a, int j) { return asObject(PyNumber_Divide(*a, *Int(j))); } inline Object operator/ (const Object& a, double v) { return asObject(PyNumber_Divide(*a, *Float(v))); } inline Object operator/ (int j, const Object& b) { return asObject(PyNumber_Divide(*Int(j), *b)); } inline Object operator/ (double v, const Object& b) { return asObject(PyNumber_Divide(*Float(v), *b)); } inline Object operator% (const Object& a, const Object& b) { return asObject(PyNumber_Remainder(*a, *b)); } inline Object operator% (const Object& a, int j) { return asObject(PyNumber_Remainder(*a, *Int(j))); } inline Object operator% (const Object& a, double v) { return asObject(PyNumber_Remainder(*a, *Float(v))); } inline Object operator% (int j, const Object& b) { return asObject(PyNumber_Remainder(*Int(j), *b)); } inline Object operator% (double v, const Object& b) { return asObject(PyNumber_Remainder(*Float(v), *b)); } inline Object type(const BaseException&) // return the type of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch(&ptype, &pvalue, &ptrace); Object result; if(ptype) result = ptype; PyErr_Restore(ptype, pvalue, ptrace); return result; } inline Object value(const BaseException&) // return the value of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch(&ptype, &pvalue, &ptrace); Object result; if(pvalue) result = pvalue; PyErr_Restore(ptype, pvalue, ptrace); return result; } inline Object trace(const BaseException&) // return the traceback of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch(&ptype, &pvalue, &ptrace); Object result; if(ptrace) result = ptrace; PyErr_Restore(ptype, pvalue, ptrace); return result; } template String seqref::str () const { return the_item.str(); } template String seqref::repr () const { return the_item.repr(); } } // namespace Py #endif // __CXX_Objects__h pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/Config.hxx000644 000765 000024 00000010022 13662724004 022307 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __PyCXX_config_hh__ #define __PyCXX_config_hh__ // // Microsoft VC++ 6.0 has no traits // #if defined( _MSC_VER ) # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 #elif defined( __GNUC__ ) # if __GNUC__ >= 3 # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 # else # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 0 #endif // // Assume all other compilers do // #else // Macros to deal with deficiencies in compilers # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 #endif #if STANDARD_LIBRARY_HAS_ITERATOR_TRAITS # define random_access_iterator_parent(itemtype) std::iterator #else # define random_access_iterator_parent(itemtype) std::random_access_iterator #endif // // Which C++ standard is in use? // #if defined( _MSC_VER ) # if _MSC_VER <= 1200 // MSVC++ 6.0 # define PYCXX_ISO_CPP_LIB 0 # define STR_STREAM # define TEMPLATE_TYPENAME class # else # define PYCXX_ISO_CPP_LIB 1 # define STR_STREAM # define TEMPLATE_TYPENAME typename # endif #elif defined( __GNUC__ ) # if __GNUC__ >= 3 # define PYCXX_ISO_CPP_LIB 1 # define STR_STREAM # define TEMPLATE_TYPENAME typename # else # define PYCXX_ISO_CPP_LIB 0 # define STR_STREAM # define TEMPLATE_TYPENAME class # endif #endif #if PYCXX_ISO_CPP_LIB # define STR_STREAM # define OSTRSTREAM ostringstream # define EXPLICIT_TYPENAME typename # define EXPLICIT_CLASS class # define TEMPLATE_TYPENAME typename #else # define STR_STREAM # define OSTRSTREAM ostrstream # define EXPLICIT_TYPENAME # define EXPLICIT_CLASS # define TEMPLATE_TYPENAME class #endif // before 2.5 Py_ssize_t was missing #ifndef PY_MAJOR_VERSION #error not defined PY_MAJOR_VERSION #endif #if PY_MAJOR_VERSION < 2 || (PY_MAJOR_VERSION == 2 && PY_MINOR_VERSION < 5) typedef int Py_ssize_t; #endif #endif // __PyCXX_config_hh__ pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/cxx_standard_exceptions.hxx000644 000765 000024 00000005421 12754100607 026032 0ustar00barrystaff000000 000000 #if !defined( PYCXX_STANDARD_EXCEPTION ) #pragma error( "define PYCXX_STANDARD_EXCEPTION before including" ) #endif PYCXX_STANDARD_EXCEPTION( SystemExit, BaseException ) PYCXX_STANDARD_EXCEPTION( KeyboardInterrupt,BaseException ) PYCXX_STANDARD_EXCEPTION( GeneratorExit, BaseException ) #if !defined( PYCXX_6_2_COMPATIBILITY ) PYCXX_STANDARD_EXCEPTION( Exception, BaseException ) #endif PYCXX_STANDARD_EXCEPTION( StopIteration, Exception ) PYCXX_STANDARD_EXCEPTION( StandardError, Exception ) PYCXX_STANDARD_EXCEPTION( BufferError, StandardError ) PYCXX_STANDARD_EXCEPTION( ArithmeticError, StandardError ) PYCXX_STANDARD_EXCEPTION( FloatingPointError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( OverflowError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( ZeroDivisionError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( AssertionError, StandardError ) PYCXX_STANDARD_EXCEPTION( AttributeError, StandardError ) PYCXX_STANDARD_EXCEPTION( EnvironmentError, StandardError ) PYCXX_STANDARD_EXCEPTION( IOError, EnvironmentError ) PYCXX_STANDARD_EXCEPTION( OSError, EnvironmentError ) #ifdef MS_WINDOWS PYCXX_STANDARD_EXCEPTION( WindowsError, OSError ) #endif PYCXX_STANDARD_EXCEPTION( EOFError, StandardError ) PYCXX_STANDARD_EXCEPTION( ImportError, StandardError ) PYCXX_STANDARD_EXCEPTION( LookupError, StandardError ) PYCXX_STANDARD_EXCEPTION( IndexError, LookupError ) PYCXX_STANDARD_EXCEPTION( KeyError, LookupError ) PYCXX_STANDARD_EXCEPTION( MemoryError, StandardError ) PYCXX_STANDARD_EXCEPTION( NameError, StandardError ) PYCXX_STANDARD_EXCEPTION( UnboundLocalError,NameError ) PYCXX_STANDARD_EXCEPTION( ReferenceError, StandardError ) PYCXX_STANDARD_EXCEPTION( RuntimeError, StandardError ) PYCXX_STANDARD_EXCEPTION( NotImplementedError, RuntimeError ) PYCXX_STANDARD_EXCEPTION( SyntaxError, StandardError ) PYCXX_STANDARD_EXCEPTION( IndentationError, SyntaxError ) PYCXX_STANDARD_EXCEPTION( TabError, IndentationError ) PYCXX_STANDARD_EXCEPTION( SystemError, StandardError ) PYCXX_STANDARD_EXCEPTION( TypeError, StandardError ) PYCXX_STANDARD_EXCEPTION( ValueError, StandardError ) PYCXX_STANDARD_EXCEPTION( UnicodeError, ValueError ) PYCXX_STANDARD_EXCEPTION( UnicodeDecodeError, UnicodeError ) PYCXX_STANDARD_EXCEPTION( UnicodeEncodeError, UnicodeError ) PYCXX_STANDARD_EXCEPTION( UnicodeTranslateError,UnicodeError ) pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/CxxDebug.hxx000644 000765 000024 00000000402 11150315604 022604 0ustar00barrystaff000000 000000 // // CxxDebug.hxx // // Copyright (c) 2008 Barry A. Scott // #ifndef __CXX_Debug_hxx #define __CXX_Debug_hxx // // Functions useful when debugging PyCXX // #ifdef PYCXX_DEBUG extern void bpt(); extern void printRefCount( PyObject *obj ); #endif #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/ExtensionOldType.hxx000644 000765 000024 00000031636 12733537475 024411 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionOldType__h #define __CXX_ExtensionOldType__h namespace Py { template class PythonExtension : public PythonExtensionBase { public: static PyTypeObject *type_object() { return behaviors().type_object(); } static bool check( PyObject *p ) { // is p like me? return p->ob_type == type_object(); } static bool check( const Object &ob ) { return check( ob.ptr() ); } // // every object needs getattr implemented // to support methods // virtual Object getattr( const char *name ) { return getattr_methods( name ); } PyObject *selfPtr() { return this; } Object self() { return asObject( this ); } protected: explicit PythonExtension() : PythonExtensionBase() { PyObject_Init( this, type_object() ); // every object must support getattr behaviors().supportGetattr(); } virtual ~PythonExtension() {} static PythonType &behaviors() { static PythonType* p; if( p == NULL ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) const char *default_name =( typeid( T ) ).name(); #else const char *default_name = "unknown"; #endif p = new PythonType( sizeof( T ), 0, default_name ); p->set_tp_dealloc( extension_object_deallocator ); } return *p; } typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); typedef std::map *> method_map_t; // support the default attributes, __name__, __doc__ and methods virtual Object getattr_default( const char *_name ) { std::string name( _name ); if( name == "__name__" && type_object()->tp_name != NULL ) { return Py::String( type_object()->tp_name ); } if( name == "__doc__" && type_object()->tp_doc != NULL ) { return Py::String( type_object()->tp_doc ); } // trying to fake out being a class for help() // else if( name == "__bases__" ) // { // return Py::Tuple( 0 ); // } // else if( name == "__module__" ) // { // return Py::Nothing(); // } // else if( name == "__dict__" ) // { // return Py::Dict(); // } return getattr_methods( _name ); } // turn a name into function object virtual Object getattr_methods( const char *_name ) { std::string name( _name ); method_map_t &mm = methods(); // see if name exists and get entry with method EXPLICIT_TYPENAME method_map_t::const_iterator i = mm.find( name ); if( i == mm.end() ) { if( name == "__methods__" ) { List methods; i = mm.begin(); EXPLICIT_TYPENAME method_map_t::const_iterator i_end = mm.end(); for( ; i != i_end; ++i ) methods.append( String( (*i).first ) ); return methods; } throw AttributeError( name ); } MethodDefExt *method_def = i->second; Tuple self( 2 ); self[0] = Object( this ); self[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ), true ); PyObject *func = PyCFunction_NewEx( &method_def->ext_meth_def, self.ptr(), NULL ); return Object(func, true); } // check that all methods added are unique static void check_unique_method_name( const char *name ) { method_map_t &mm = methods(); EXPLICIT_TYPENAME method_map_t::const_iterator i; i = mm.find( name ); if( i != mm.end() ) throw AttributeError( name ); } static void add_noargs_method( const char *name, method_noargs_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_noargs_call_handler, doc ); } static void add_varargs_method( const char *name, method_varargs_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_varargs_call_handler, doc ); } static void add_keyword_method( const char *name, method_keyword_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_keyword_call_handler, doc ); } private: static method_map_t &methods( void ) { static method_map_t *map_of_methods = NULL; if( map_of_methods == NULL ) map_of_methods = new method_map_t; return *map_of_methods; } // Note: Python calls noargs as varargs buts args==NULL static PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) ); Object result; // Adding try & catch in case of STL debug-mode exceptions. #ifdef _STLP_DEBUG try { result = (self->*meth_def->ext_noargs_function)(); } catch( std::__stl_debug_exception ) { // throw cxx::RuntimeError( sErrMsg ); throw RuntimeError( "Error message not set yet." ); } #else result = (self->*meth_def->ext_noargs_function)(); #endif // _STLP_DEBUG return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) ); Tuple args( _args ); Object result; // Adding try & catch in case of STL debug-mode exceptions. #ifdef _STLP_DEBUG try { result = (self->*meth_def->ext_varargs_function)( args ); } catch( std::__stl_debug_exception ) { throw RuntimeError( "Error message not set yet." ); } #else result = (self->*meth_def->ext_varargs_function)( args ); #endif // _STLP_DEBUG return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) ); Tuple args( _args ); // _keywords may be NULL so be careful about the way the dict is created Dict keywords; if( _keywords != NULL ) keywords = Dict( _keywords ); Object result( ( self->*meth_def->ext_keyword_function )( args, keywords ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static void extension_object_deallocator( PyObject* t ) { delete (T *)( t ); } // // prevent the compiler generating these unwanted functions // explicit PythonExtension( const PythonExtension &other ); void operator=( const PythonExtension &rhs ); }; // // ExtensionObject is an Object that will accept only T's. // template class ExtensionObject: public Object { public: explicit ExtensionObject( PyObject *pyob ) : Object( pyob ) { validate(); } ExtensionObject( const ExtensionObject &other ) : Object( *other ) { validate(); } ExtensionObject( const Object &other ) : Object( *other ) { validate(); } ExtensionObject &operator=( const Object &rhs ) { return( *this = *rhs ); } ExtensionObject &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return( pyob && T::check( pyob ) ); } // // Obtain a pointer to the PythonExtension object // T *extensionObject( void ) { return static_cast( ptr() ); } }; } // Namespace Py // End of __CXX_ExtensionOldType__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/PythonType.hxx000644 000765 000024 00000021007 13662723705 023241 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_PythonType__h #define __CXX_PythonType__h namespace Py { class PythonType { public: #define B(n) (1<<(n)) // if you define one sequence method you must define // all of them except the assigns PythonType( size_t base_size, int itemsize, const char *default_name ); virtual ~PythonType(); const char *getName() const; const char *getDoc() const; PyTypeObject *type_object() const; PythonType &name( const char *nam ); PythonType &doc( const char *d ); PythonType &supportClass( void ); PythonType &dealloc( void (*f)( PyObject* ) ); #if defined( PYCXX_PYTHON_2TO3 ) PythonType &supportPrint( void ); #endif PythonType &supportGetattr( void ); PythonType &supportSetattr( void ); PythonType &supportGetattro( void ); PythonType &supportSetattro( void ); #if defined( PYCXX_PYTHON_2TO3 ) PythonType &supportCompare( void ); #endif PythonType &supportRichCompare( void ); PythonType &supportRepr( void ); PythonType &supportStr( void ); PythonType &supportHash( void ); PythonType &supportCall( void ); enum { support_iter_iter = B(0), support_iter_iternext = B(1) }; PythonType &supportIter( int methods_to_support= support_iter_iter | support_iter_iternext ); enum { support_sequence_length = B(0), support_sequence_repeat = B(1), support_sequence_item = B(2), support_sequence_slice = B(3), support_sequence_concat = B(4), support_sequence_ass_item = B(5), support_sequence_ass_slice = B(6), support_sequence_inplace_concat = B(7), support_sequence_inplace_repeat = B(8), support_sequence_contains = B(9) }; PythonType &supportSequenceType( int methods_to_support= support_sequence_length | support_sequence_repeat | support_sequence_item | support_sequence_slice | support_sequence_concat ); enum { support_mapping_length = B(0), support_mapping_subscript = B(1), support_mapping_ass_subscript = B(2) }; PythonType &supportMappingType( int methods_to_support= support_mapping_length | support_mapping_subscript ); enum { support_number_add = B(0), support_number_subtract = B(1), support_number_multiply = B(2), support_number_divide = B(3), support_number_remainder = B(4), support_number_divmod = B(5), support_number_power = B(6), support_number_negative = B(7), support_number_positive = B(8), support_number_absolute = B(9), support_number_nonzero = B(10), support_number_invert = B(11), support_number_lshift = B(12), support_number_rshift = B(13), support_number_and = B(14), support_number_xor = B(15), support_number_or = B(16), support_number_int = B(17), support_number_long = B(18), support_number_float = B(19), support_number_oct = B(20), support_number_hex = B(21) }; PythonType &supportNumberType( int methods_to_support= support_number_add | support_number_subtract | support_number_multiply | support_number_divide | support_number_remainder | support_number_divmod | support_number_power | support_number_negative | support_number_positive | support_number_absolute | support_number_nonzero | support_number_invert | support_number_lshift | support_number_rshift | support_number_and | support_number_xor | support_number_or | support_number_int | support_number_long | support_number_float | support_number_oct | support_number_hex ); enum { support_buffer_getreadbuffer = B(0), support_buffer_getwritebuffer = B(1), support_buffer_getsegcount = B(2) }; PythonType &supportBufferType( int methods_to_support= support_buffer_getreadbuffer | support_buffer_getwritebuffer | support_buffer_getsegcount ); #undef B PythonType &set_tp_dealloc( void (*tp_dealloc)( PyObject * ) ); PythonType &set_tp_init( int (*tp_init)( PyObject *self, PyObject *args, PyObject *kwds ) ); PythonType &set_tp_new( PyObject *(*tp_new)( PyTypeObject *subtype, PyObject *args, PyObject *kwds ) ); PythonType &set_methods( PyMethodDef *methods ); // call once all support functions have been called to ready the type bool readyType(); protected: PyTypeObject *table; PySequenceMethods *sequence_table; PyMappingMethods *mapping_table; PyNumberMethods *number_table; PyBufferProcs *buffer_table; private: // // prevent the compiler generating these unwanted functions // PythonType( const PythonType &tb ); // unimplemented void operator=( const PythonType &t ); // unimplemented }; } // Namespace Py // End of __CXX_PythonType__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python2/ExtensionModule.hxx000644 000765 000024 00000021171 12733537475 024247 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionModule__h #define __CXX_ExtensionModule__h namespace Py { class ExtensionModuleBase { public: ExtensionModuleBase( const char *name ); virtual ~ExtensionModuleBase(); Module module( void ) const; // only valid after initialize() has been called Dict moduleDictionary( void ) const; // only valid after initialize() has been called virtual Object invoke_method_noargs( void *method_def ) = 0; virtual Object invoke_method_keyword( void *method_def, const Tuple &_args, const Dict &_keywords ) = 0; virtual Object invoke_method_varargs( void *method_def, const Tuple &_args ) = 0; const std::string &name() const; const std::string &fullName() const; // what is returned from PyInit_ function Object moduleObject( void ) const; protected: // Initialize the module void initialize( const char *module_doc ); const std::string m_module_name; const std::string m_full_module_name; MethodTable m_method_table; PyObject *m_module; private: // // prevent the compiler generating these unwanted functions // ExtensionModuleBase( const ExtensionModuleBase & ); //unimplemented void operator=( const ExtensionModuleBase & ); //unimplemented }; // Note: Python calls noargs as varargs buts args==NULL extern "C" PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ); extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ); extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ); extern "C" void do_not_dealloc( void * ); template class ExtensionModule : public ExtensionModuleBase { public: ExtensionModule( const char *name ) : ExtensionModuleBase( name ) {} virtual ~ExtensionModule() {} protected: typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); typedef std::map *> method_map_t; static void add_noargs_method( const char *name, method_noargs_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_noargs_call_handler, doc ); } static void add_varargs_method( const char *name, method_varargs_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_varargs_call_handler, doc ); } static void add_keyword_method( const char *name, method_keyword_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_keyword_call_handler, doc ); } void initialize( const char *module_doc="" ) { ExtensionModuleBase::initialize( module_doc ); Dict dict( moduleDictionary() ); // // put each of the methods into the modules dictionary // so that we get called back at the function in T. // method_map_t &mm = methods(); EXPLICIT_TYPENAME method_map_t::const_iterator i = mm.begin(); EXPLICIT_TYPENAME method_map_t::const_iterator i_end = mm.end(); for ( ; i != i_end; ++i ) { MethodDefExt *method_def = (*i).second; static PyObject *self = PyCObject_FromVoidPtr( this, do_not_dealloc ); Tuple args( 2 ); args[0] = Object( self, true ); args[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ), true ); assert( m_module != NULL ); PyObject *func = PyCFunction_NewEx ( &method_def->ext_meth_def, new_reference_to( args ), m_module ); method_def->py_method = Object( func, true ); dict[ (*i).first ] = method_def->py_method; } } protected: // Tom Malcolmson reports that derived classes need access to these static method_map_t &methods( void ) { static method_map_t *map_of_methods = NULL; if( map_of_methods == NULL ) map_of_methods = new method_map_t; return *map_of_methods; } // this invoke function must be called from within a try catch block virtual Object invoke_method_noargs( void *method_def ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_noargs_function)(); } // this invoke function must be called from within a try catch block virtual Object invoke_method_varargs( void *method_def, const Tuple &args ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_varargs_function)( args ); } // this invoke function must be called from within a try catch block virtual Object invoke_method_keyword( void *method_def, const Tuple &args, const Dict &keywords ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_keyword_function)( args, keywords ); } private: // // prevent the compiler generating these unwanted functions // ExtensionModule( const ExtensionModule & ); //unimplemented void operator=( const ExtensionModule & ); //unimplemented }; } // Namespace Py // End of __CXX_ExtensionModule__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/Exception.hxx000644 000765 000024 00000013600 13430341141 023034 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Exception_h #define __CXX_Exception_h #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Config.hxx" #include "CXX/CxxDebug.hxx" #include "CXX/IndirectPythonInterface.hxx" #include #include // This mimics the Python structure, in order to minimize confusion namespace Py { class ExtensionExceptionType; class Object; class BaseException { public: BaseException( ExtensionExceptionType &exception, const std::string &reason ); BaseException( ExtensionExceptionType &exception, Object &reason ); BaseException( PyObject *exception, Object &reason ); BaseException( PyObject *exception, const std::string &reason ); explicit BaseException(); void clear(); // clear the error // is the exception this specific exception 'exc' bool matches( ExtensionExceptionType &exc ); Object errorType(); // get the error type of the active exception Object errorValue();// get the error value of the active exception }; // for user defined exceptions to be made know to pycxx typedef void (*throw_exception_func_t)( void ); void addPythonException( ExtensionExceptionType &py_exc_type, throw_exception_func_t throw_func ); #if defined( PYCXX_6_2_COMPATIBILITY ) class Exception : public BaseException { public: Exception( ExtensionExceptionType &exception, const std::string &reason ) : BaseException( exception, reason ) {} Exception( ExtensionExceptionType &exception, Object &reason ) : BaseException( exception, reason ) {} Exception( PyObject *exception, Object &reason ) : BaseException( exception, reason ) {} Exception( PyObject *exception, const std::string &reason ) : BaseException( exception, reason ) {} explicit Exception() : BaseException() {} }; #endif #define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ class eclass : public bclass \ { \ public: \ eclass() {} \ eclass( const char *reason ) { PyErr_SetString( _Exc_##eclass(), reason ); } \ eclass( const std::string &reason ) { PyErr_SetString( _Exc_##eclass(), reason.c_str() ); } \ ~eclass() {} \ \ static void throwFunc() { throw eclass(); } \ static PyObject *exceptionType() { return _Exc_##eclass(); } \ }; \ #include #undef PYCXX_STANDARD_EXCEPTION #define PYCXX_USER_EXCEPTION_STR_ARG( uclass ) \ class uclass : public Py::BaseException \ { \ public: \ uclass( const std::string &reason ) \ : Py::BaseException( m_error, reason ) \ { } \ ~uclass() {} \ static void init( Py::ExtensionModuleBase &module ) \ { \ m_error.init( module, #uclass ); \ Py::addPythonException( m_error, throwFunc ); \ Py::Dict d( module.moduleDictionary() ); \ d[#uclass] = m_error; \ } \ private: \ uclass() : Py::BaseException() {} \ static void throwFunc() \ { \ throw uclass(); \ } \ static Py::ExtensionExceptionType m_error; \ }; \ Py::ExtensionExceptionType uclass::m_error; #define PYCXX_USER_EXCEPTION_NO_ARG( uclass ) \ class uclass : public Py::BaseException \ { \ public: \ uclass() \ : Py::BaseException() \ { } \ ~uclass() {} \ static void init( Py::ExtensionModuleBase &module ) \ { \ m_error.init( module, #uclass ); \ Py::addPythonException( m_error, throwFunc ); \ Py::Dict d( module.moduleDictionary() ); \ d[#uclass] = m_error; \ } \ private: \ static void throwFunc() \ { \ throw uclass(); \ } \ static Py::ExtensionExceptionType m_error; \ }; \ Py::ExtensionExceptionType uclass::m_error; }// Py #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/Extensions.hxx000644 000765 000024 00000015625 12745352476 023273 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Extensions__h #define __CXX_Extensions__h #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // okay to ignore #pragma warning( disable: 4786 ) #endif #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Python3/Config.hxx" #include "CXX/Python3/CxxDebug.hxx" #include "CXX/Python3/Objects.hxx" extern "C" { extern PyObject py_object_initializer; } #include #include // ---------------------------------------------------------------------- namespace Py { class ExtensionModuleBase; // Make an Exception Type for use in raising custom exceptions class ExtensionExceptionType : public Object { public: ExtensionExceptionType(); virtual ~ExtensionExceptionType(); // call init to create the type void init( ExtensionModuleBase &module, const std::string &name, ExtensionExceptionType &parent ); void init( ExtensionModuleBase &module, const std::string &name ); }; class MethodTable { public: MethodTable(); virtual ~MethodTable(); void add( const char *method_name, PyCFunction f, const char *doc="", int flag=1 ); PyMethodDef *table(); protected: std::vector t; // accumulator of PyMethodDef's PyMethodDef *mt; // Actual method table produced when full static PyMethodDef method( const char* method_name, PyCFunction f, int flags=1, const char* doc="" ); private: // // prevent the compiler generating these unwanted functions // MethodTable( const MethodTable &m ); //unimplemented void operator=( const MethodTable &m ); //unimplemented }; // end class MethodTable // Note: Python calls noargs as varargs buts args==NULL extern "C" typedef PyObject *(*method_noargs_call_handler_t)( PyObject *_self, PyObject * ); extern "C" typedef PyObject *(*method_varargs_call_handler_t)( PyObject *_self, PyObject *_args ); extern "C" typedef PyObject *(*method_keyword_call_handler_t)( PyObject *_self, PyObject *_args, PyObject *_dict ); template class MethodDefExt { public: typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); // NOARGS MethodDefExt ( const char *_name, method_noargs_function_t _function, method_noargs_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_NOARGS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = _function; ext_varargs_function = NULL; ext_keyword_function = NULL; } // VARARGS MethodDefExt ( const char *_name, method_varargs_function_t _function, method_varargs_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_VARARGS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = NULL; ext_varargs_function = _function; ext_keyword_function = NULL; } // VARARGS + KEYWORD MethodDefExt ( const char *_name, method_keyword_function_t _function, method_keyword_call_handler_t _handler, const char *_doc ) { ext_meth_def.ml_name = const_cast( _name ); ext_meth_def.ml_meth = reinterpret_cast( _handler ); ext_meth_def.ml_flags = METH_VARARGS|METH_KEYWORDS; ext_meth_def.ml_doc = const_cast( _doc ); ext_noargs_function = NULL; ext_varargs_function = NULL; ext_keyword_function = _function; } ~MethodDefExt() {} PyMethodDef ext_meth_def; method_noargs_function_t ext_noargs_function; method_varargs_function_t ext_varargs_function; method_keyword_function_t ext_keyword_function; Object py_method; }; } // Namespace Py #include "CXX/Python3/ExtensionModule.hxx" #include "CXX/Python3/PythonType.hxx" #include "CXX/Python3/ExtensionTypeBase.hxx" #include "CXX/Python3/ExtensionOldType.hxx" #include "CXX/Python3/ExtensionType.hxx" // End of CXX_Extensions.h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/IndirectPythonInterface.hxx000644 000765 000024 00000011504 14443557171 025704 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ # define __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ # include "CXX/WrapPython.h" namespace Py { bool InitialisePythonIndirectInterface(); // // Wrap Exception variables as function calls // PyObject * _Exc_BaseException(); # define PYCXX_STANDARD_EXCEPTION( eclass, bclass ) \ PyObject * _Exc_##eclass(); # include "CXX/Python3/cxx_standard_exceptions.hxx" # undef PYCXX_STANDARD_EXCEPTION // // Wrap Object variables as function calls // PyObject * _None(); PyObject * _False(); PyObject * _True(); // // Wrap Type variables as function calls // PyTypeObject * _List_Type(); bool _List_Check( PyObject *o ); PyTypeObject * _Buffer_Type(); bool _Buffer_Check( PyObject *op ); PyTypeObject * _Class_Type(); bool _Class_Check( PyObject *op ); PyTypeObject * _Instance_Type(); bool _Instance_Check( PyObject *op ); # if !defined( Py_LIMITED_API ) PyTypeObject * _Method_Type(); bool _Method_Check( PyObject *op ); PyTypeObject * _Function_Type(); bool _Function_Check( PyObject *op ); # endif PyTypeObject * _Complex_Type(); bool _Complex_Check( PyObject *op ); PyTypeObject * _Dict_Type(); bool _Dict_Check( PyObject *op ); PyTypeObject * _File_Type(); bool _File_Check( PyObject *op ); PyTypeObject * _Float_Type(); bool _Float_Check( PyObject *op ); PyTypeObject * _Frame_Type(); bool _Frame_Check( PyObject *op ); PyTypeObject * _Bool_Type(); bool _Boolean_Check( PyObject *op ); PyTypeObject * _Int_Type(); bool _Int_Check( PyObject *op ); PyTypeObject * _List_Type(); bool _List_Check( PyObject *op ); PyTypeObject * _Long_Type(); bool _Long_Check( PyObject *op ); PyTypeObject * _CFunction_Type(); bool _CFunction_Check( PyObject *op ); PyTypeObject * _Module_Type(); bool _Module_Check( PyObject *op ); PyTypeObject * _Type_Type(); bool _Type_Check( PyObject *op ); PyTypeObject * _Range_Type(); bool _Range_Check( PyObject *op ); PyTypeObject * _Slice_Type(); bool _Slice_Check( PyObject *op ); PyTypeObject * _Unicode_Type(); bool _Unicode_Check( PyObject *op ); PyTypeObject * _Bytes_Type(); bool _Bytes_Check( PyObject *op ); PyTypeObject * _TraceBack_Type(); bool _TraceBack_Check( PyObject *v ); PyTypeObject * _Tuple_Type(); bool _Tuple_Check( PyObject *op ); # if PY_MAJOR_VERSION == 2 || !defined( Py_LIMITED_API ) int &_Py_DebugFlag(); int &_Py_InteractiveFlag(); int &_Py_OptimizeFlag(); int &_Py_NoSiteFlag(); int &_Py_TabcheckFlag(); int &_Py_VerboseFlag(); # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION <= 11 # if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 7 const char *__Py_PackageContext(); # else char *__Py_PackageContext(); # endif # endif # endif void _XINCREF( PyObject *op ); void _XDECREF( PyObject *op ); }; #endif // __CXX_INDIRECT_PYTHON_INTERFACE__HXX__ pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/ExtensionTypeBase.hxx000644 000765 000024 00000022453 13662723705 024536 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionTypeBase__h #define __CXX_ExtensionTypeBase__h namespace Py { // Class PythonExtension is what you inherit from to create // a new Python extension type. You give your class itself // as the template paramter. // There are two ways that extension objects can get destroyed. // 1. Their reference count goes to zero // 2. Someone does an explicit delete on a pointer. // In(1) the problem is to get the destructor called // We register a special deallocator in the Python type object // (see behaviors()) to do this. // In(2) there is no problem, the dtor gets called. // PythonExtension does not use the usual Python heap allocator, // instead using new/delete. We do the setting of the type object // and reference count, usually done by PyObject_New, in the // base class ctor. // This special deallocator does a delete on the pointer. class PythonExtensionBase : public PyObject { public: PythonExtensionBase(); virtual ~PythonExtensionBase(); public: // object virtual void reinit( Tuple &args, Dict &kwds ); // object basics #if defined( PYCXX_PYTHON_2TO3 ) && !defined( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 virtual int print( FILE *, int ); #endif virtual Object getattr( const char * ); virtual int setattr( const char *, const Object & ); virtual Object getattro( const String & ); Object genericGetAttro( const String & ); virtual int setattro( const String &, const Object & ); int genericSetAttro( const String &, const Object & ); virtual int compare( const Object & ); virtual Object rich_compare( const Object &, int ); virtual Object repr(); virtual Object str(); virtual long hash(); virtual Object call( const Object &, const Object & ); virtual Object iter(); virtual PyObject *iternext(); // Sequence methods virtual PyCxx_ssize_t sequence_length(); virtual Object sequence_concat( const Object & ); virtual Object sequence_repeat( Py_ssize_t ); virtual Object sequence_item( Py_ssize_t ); virtual int sequence_ass_item( Py_ssize_t, const Object & ); virtual Object sequence_inplace_concat( const Object & ); virtual Object sequence_inplace_repeat( Py_ssize_t ); virtual int sequence_contains( const Object & ); // Mapping virtual PyCxx_ssize_t mapping_length(); virtual Object mapping_subscript( const Object & ); virtual int mapping_ass_subscript( const Object &, const Object & ); // Number virtual Object number_negative(); virtual Object number_positive(); virtual Object number_absolute(); virtual Object number_invert(); virtual Object number_int(); virtual Object number_float(); virtual Object number_add( const Object & ); virtual Object number_subtract( const Object & ); virtual Object number_multiply( const Object & ); virtual Object number_remainder( const Object & ); virtual Object number_divmod( const Object & ); virtual Object number_lshift( const Object & ); virtual Object number_rshift( const Object & ); virtual Object number_and( const Object & ); virtual Object number_xor( const Object & ); virtual Object number_or( const Object & ); virtual Object number_power( const Object &, const Object & ); virtual Object number_floor_divide( const Object & ); virtual Object number_true_divide( const Object & ); virtual Object number_index(); #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 virtual Object number_matrix_multiply( const Object & ); #endif virtual Object number_inplace_add( const Object & ); virtual Object number_inplace_subtract( const Object & ); virtual Object number_inplace_multiply( const Object & ); virtual Object number_inplace_remainder( const Object & ); virtual Object number_inplace_power( const Object &, const Object & ); virtual Object number_inplace_lshift( const Object & ); virtual Object number_inplace_rshift( const Object & ); virtual Object number_inplace_and( const Object & ); virtual Object number_inplace_xor( const Object & ); virtual Object number_inplace_or( const Object & ); virtual Object number_inplace_floor_divide( const Object & ); virtual Object number_inplace_true_divide( const Object & ); #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 virtual Object number_inplace_matrix_multiply( const Object & ); #endif #if !defined( Py_LIMITED_API ) // Buffer virtual int buffer_get( Py_buffer *, int flags ); virtual int buffer_release( Py_buffer *buf ); #endif public: // helper functions to call function fn_name with 0 to 9 args Object callOnSelf( const std::string &fn_name ); Object callOnSelf( const std::string &fn_name, const Object &arg1 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8 ); Object callOnSelf( const std::string &fn_name, const Object &arg1, const Object &arg2, const Object &arg3, const Object &arg4, const Object &arg5, const Object &arg6, const Object &arg7, const Object &arg8, const Object &arg9 ); public: virtual PyObject *selfPtr() = 0; virtual Object self() = 0; private: void missing_method( void ); static PyObject *method_call_handler( PyObject *self, PyObject *args ); }; } // Namespace Py // End of __CXX_ExtensionTypeBase__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/ExtensionType.hxx000644 000765 000024 00000034745 13662723705 023752 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionClass__h #define __CXX_ExtensionClass__h #define PYCXX_NOARGS_METHOD_NAME( NAME ) _callNoArgsMethod__##NAME #define PYCXX_VARARGS_METHOD_NAME( NAME ) _callVarArgsMethod__##NAME #define PYCXX_KEYWORDS_METHOD_NAME( NAME ) _callKeywordsMethod__##NAME #define PYCXX_NOARGS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_NOARGS_METHOD_NAME( NAME )( PyObject *_self, PyObject *, PyObject * ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Object r( (self->NAME)() ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } #define PYCXX_VARARGS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_VARARGS_METHOD_NAME( NAME )( PyObject *_self, PyObject *_a, PyObject * ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Tuple a( _a ); \ Py::Object r( (self->NAME)( a ) ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } #define PYCXX_KEYWORDS_METHOD_DECL( CLS, NAME ) \ static PyObject *PYCXX_KEYWORDS_METHOD_NAME( NAME )( PyObject *_self, PyObject *_a, PyObject *_k ) \ { \ try \ { \ Py::PythonClassInstance *self_python = reinterpret_cast< Py::PythonClassInstance * >( _self ); \ CLS *self = reinterpret_cast< CLS * >( self_python->m_pycxx_object ); \ Py::Tuple a( _a ); \ Py::Dict k; \ if( _k != NULL ) \ k = _k; \ Py::Object r( (self->NAME)( a, k ) ); \ return Py::new_reference_to( r.ptr() ); \ } \ catch( Py::BaseException & ) \ { \ return 0; \ } \ } // need to support METH_STATIC and METH_CLASS #define PYCXX_ADD_NOARGS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_NOARGS_METHOD_NAME( NAME ), METH_NOARGS, docs ) #define PYCXX_ADD_VARARGS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_VARARGS_METHOD_NAME( NAME ), METH_VARARGS, docs ) #define PYCXX_ADD_KEYWORDS_METHOD( PYNAME, NAME, docs ) \ add_method( #PYNAME, (PyCFunction)PYCXX_KEYWORDS_METHOD_NAME( NAME ), METH_VARARGS | METH_KEYWORDS, docs ) namespace Py { extern PythonExtensionBase *getPythonExtensionBase( PyObject *self ); struct PythonClassInstance { PyObject_HEAD PythonExtensionBase *m_pycxx_object; }; class ExtensionClassMethodsTable { public: ExtensionClassMethodsTable() : m_methods_table( new PyMethodDef[ METHOD_TABLE_SIZE_INCREMENT ] ) , m_methods_used( 0 ) , m_methods_size( METHOD_TABLE_SIZE_INCREMENT ) { // add the sentinel marking the table end PyMethodDef *p = &m_methods_table[ 0 ]; p->ml_name = NULL; p->ml_meth = NULL; p->ml_flags = 0; p->ml_doc = NULL; } ~ExtensionClassMethodsTable() { delete[] m_methods_table; } // check that all methods added are unique void check_unique_method_name( const char *_name ) { std::string name( _name ); for( int i=0; iml_name = name; p->ml_meth = function; p->ml_flags = flags; p->ml_doc = doc; m_methods_used++; p++; // add the sentinel marking the table end p->ml_name = NULL; p->ml_meth = NULL; p->ml_flags = 0; p->ml_doc = NULL; return m_methods_table; } private: enum {METHOD_TABLE_SIZE_INCREMENT = 1}; PyMethodDef *m_methods_table; int m_methods_used; int m_methods_size; }; template class PythonClass : public PythonExtensionBase { protected: explicit PythonClass( PythonClassInstance *self, Tuple &/*args*/, Dict &/*kwds*/ ) : PythonExtensionBase() , m_class_instance( self ) { } virtual ~PythonClass() {} static ExtensionClassMethodsTable &methodTable() { static ExtensionClassMethodsTable *method_table; if( method_table == NULL ) method_table = new ExtensionClassMethodsTable; return *method_table; } static void add_method( const char *name, PyCFunction function, int flags, const char *doc=NULL ) { behaviors().set_methods( methodTable().add_method( name, function, flags, doc ) ); } static PythonType &behaviors() { static PythonType *p; if( p == NULL ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) const char *default_name = (typeid( T )).name(); #else const char *default_name = "unknown"; #endif p = new PythonType( sizeof( PythonClassInstance ), 0, default_name ); p->set_tp_new( extension_object_new ); p->set_tp_init( extension_object_init ); p->set_tp_dealloc( extension_object_deallocator ); // we are a class p->supportClass(); // always support get and set attr p->supportGetattro(); p->supportSetattro(); } return *p; } static PyObject *extension_object_new( PyTypeObject *subtype, PyObject * /*args*/, PyObject * /*kwds*/ ) { #ifdef PYCXX_DEBUG std::cout << "extension_object_new()" << std::endl; #endif #if defined( Py_LIMITED_API ) PyObject *object = reinterpret_cast( PyType_GetSlot( subtype, Py_tp_alloc ) )( subtype, 0 ); #else PyObject *object = subtype->tp_alloc( subtype, 0 ); #endif if( object == NULL ) return NULL; PythonClassInstance *o = reinterpret_cast( object ); o->m_pycxx_object = NULL; PyObject *self = reinterpret_cast( o ); #ifdef PYCXX_DEBUG std::cout << "extension_object_new() => self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << std::endl; #endif return self; } static int extension_object_init( PyObject *_self, PyObject *args_, PyObject *kwds_ ) { try { Py::Tuple args( args_ ); Py::Dict kwds; if( kwds_ != NULL ) kwds = kwds_; PythonClassInstance *self = reinterpret_cast( _self ); #ifdef PYCXX_DEBUG std::cout << "extension_object_init( self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << " )" << std::endl; std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif if( self->m_pycxx_object == NULL ) { self->m_pycxx_object = new T( self, args, kwds ); #ifdef PYCXX_DEBUG std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif } else { #ifdef PYCXX_DEBUG std::cout << " reinit - self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif self->m_pycxx_object->reinit( args, kwds ); } } catch( BaseException & ) { return -1; } return 0; } static void extension_object_deallocator( PyObject *_self ) { PythonClassInstance *self = reinterpret_cast< PythonClassInstance * >( _self ); #ifdef PYCXX_DEBUG std::cout << "extension_object_deallocator( self=0x" << std::hex << reinterpret_cast< unsigned long >( self ) << std::dec << " )" << std::endl; std::cout << " self->m_pycxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( self->m_pycxx_object ) << std::dec << std::endl; #endif delete self->m_pycxx_object; #ifdef Py_LIMITED_API freefunc fn = reinterpret_cast( PyType_GetSlot( _self->ob_type, Py_tp_free ) ); fn( _self ); #else _self->ob_type->tp_free( _self ); #endif } public: static PyTypeObject *type_object() { return behaviors().type_object(); } static Object type() { return Object( reinterpret_cast( behaviors().type_object() ) ); } static bool check( PyObject *p ) { // is p a me or a derived me switch( PyObject_IsInstance( p, reinterpret_cast( type_object() ) ) ) { default: case -1: throw Exception(); case 0: return false; case 1: return true; } } static bool check( const Object &ob ) { return check( ob.ptr() ); } virtual PyObject *selfPtr() { return reinterpret_cast( m_class_instance ); } virtual Object self() { return Object( reinterpret_cast( m_class_instance ) ); } protected: private: PythonClassInstance *m_class_instance; private: // // prevent the compiler generating these unwanted functions // explicit PythonClass( const PythonClass &other ); void operator=( const PythonClass &rhs ); }; // // ExtensionObject is an Object that will accept only T's. // template class PythonClassObject: public Object { public: explicit PythonClassObject( PyObject *pyob ) : Object( pyob ) { validate(); } PythonClassObject( const PythonClassObject &other ) : Object( *other ) { validate(); } PythonClassObject( const Object &other ) : Object( *other ) { validate(); } PythonClassObject &operator=( const Object &rhs ) { *this = *rhs; return *this; } PythonClassObject &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return( pyob && T::check( pyob ) ); } // // Obtain a pointer to the PythonExtension object // T *getCxxObject( void ) { return dynamic_cast< T * >( getPythonExtensionBase( ptr() ) ); } }; } // Namespace Py // End of __CXX_ExtensionClass__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/Objects.hxx000644 000765 000024 00000275122 14305137235 022511 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_Objects__h #define __CXX_Objects__h #include "CXX/WrapPython.h" #include "CXX/Version.hxx" #include "CXX/Python3/Config.hxx" #include "CXX/Python3/CxxDebug.hxx" #include "CXX/Python3/Exception.hxx" #include #include STR_STREAM #include #include #include #include #include #include namespace Py { void ifPyErrorThrowCxxException(); typedef Py_ssize_t sequence_index_type; // type of an index into a sequence // Forward declarations class Object; class Type; template class SeqBase; class Bytes; class String; class List; template class MapBase; class Tuple; class Dict; //===========================================================================// // class Object // The purpose of this class is to serve as the most general kind of // Python object, for the purpose of writing C++ extensions in Python // Objects hold a PyObject* which they own. This pointer is always a // valid pointer to a Python object. In children we must maintain this behavior. // // Instructions on how to make your own class MyType descended from Object: // (0) Pick a base class, either Object or perhaps SeqBase or MapBase. // This example assumes Object. // (1) Write a routine int MyType_Check( PyObject * ) modeled after PyInt_Check, // PyFloat_Check, etc. // (2) Add method accepts: // virtual bool accepts( PyObject *pyob ) const { // return pyob && MyType_Check( pyob ); // } // (3) Include the following constructor and copy constructor // /* explicit MyType( PyObject *pyob ): Object( pyob ) { validate(); } MyType( const Object &other ): Object( other.ptr() ) { validate(); } */ // Alernate version for the constructor to allow for construction from owned pointers: /* explicit MyType( PyObject *pyob ): Object( pyob ) { validate(); } */ // You may wish to add other constructors; see the classes below for examples. // Each constructor must use "set" to set the pointer // and end by validating the pointer you have created. //( 4 ) Each class needs at least these two assignment operators: /* MyType &operator=( const Object &rhs ) { return *this = *rhs; } Mytype &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } */ // Note on accepts: constructors call the base class // version of a virtual when calling the base class constructor, // so the test has to be done explicitly in a descendent. // If you are inheriting from PythonExtension to define an object // note that it contains PythonExtension::check // which you can use in accepts when writing a wrapper class. // See Demo/range.h and Demo/range.cxx for an example. class Object { private: // the pointer to the Python object // Only Object sets this directly. // The default constructor for Object sets it to Py_None and // child classes must use "set" to set it // PyObject *p; protected: void set( PyObject *pyob, bool owned = false ) { release(); p = pyob; if( !owned ) { Py::_XINCREF( p ); } validate(); } void release() { Py::_XDECREF( p ); p = NULL; } void validate(); public: // Constructor acquires new ownership of pointer unless explicitly told not to. explicit Object( PyObject *pyob=Py::_None(), bool owned = false ) : p( pyob ) { if( !owned ) { Py::_XINCREF( p ); } validate(); } // Copy constructor acquires new ownership of pointer Object( const Object &ob ) : p( ob.p ) { Py::_XINCREF( p ); validate(); } // Assignment acquires new ownership of pointer Object &operator=( const Object &rhs ) { set( rhs.p ); return *this; } Object &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Destructor virtual ~Object() { release(); } // Loaning the pointer to others, retain ownership PyObject *operator*() const { return p; } // Explicit reference_counting changes void increment_reference_count() { Py::_XINCREF( p ); } void decrement_reference_count() { // not allowed to commit suicide, however if( reference_count() == 1 ) { throw RuntimeError( "Object::decrement_reference_count error." ); } Py::_XDECREF( p ); } // Would like to call this pointer() but messes up STL in SeqBase PyObject *ptr() const { return p; } // // Queries // // Can pyob be used in this object's constructor? virtual bool accepts( PyObject * ) const { // allow any object or NULL return true; } Py_ssize_t reference_count() const { // the reference count return p ? p->ob_refcnt : 0; } Type type() const; // the type object associated with this one String str() const; // the str() representation std::string as_string() const; String repr() const; // the repr() representation List dir() const; // the dir() list bool hasAttr( const std::string &s ) const { return PyObject_HasAttrString( p, const_cast( s.c_str() ) ) ? true: false; } Object getAttr( const std::string &s ) const { return Object( PyObject_GetAttrString( p, const_cast( s.c_str() ) ), true ); } Object callMemberFunction( const std::string &function_name ) const; Object callMemberFunction( const std::string &function_name, const Tuple &args ) const; Object callMemberFunction( const std::string &function_name, const Tuple &args, const Dict &kw ) const; Object getItem( const Object &key ) const { return Object( PyObject_GetItem( p, *key ), true ); } Py_hash_t hashValue() const { return PyObject_Hash( p ); } // convert to bool bool as_bool() const { return PyObject_IsTrue( ptr() ) != 0; } bool is( PyObject *pother ) const { // identity test return p == pother; } bool is( const Object &other ) const { // identity test return p == other.p; } bool isNull() const { return p == NULL; } bool isNone() const { return p == _None(); } bool isCallable() const { return PyCallable_Check( p ) != 0; } bool isDict() const { return Py::_Dict_Check( p ); } bool isList() const { return Py::_List_Check( p ); } bool isMapping() const { return PyMapping_Check( p ) != 0; } bool isNumeric() const { return PyNumber_Check( p ) != 0; } bool isSequence() const { return PySequence_Check( p ) != 0; } bool isTrue() const { return PyObject_IsTrue( p ) != 0; } bool isType( const Type &t ) const; bool isTuple() const { return Py::_Tuple_Check( p ); } bool isString() const { return Py::_Unicode_Check( p ); } bool isBytes() const { return Py::_Bytes_Check( p ); } bool isBoolean() const { return Py::_Boolean_Check( p ); } // Commands void setAttr( const std::string &s, const Object &value ) { if( PyObject_SetAttrString( p, const_cast( s.c_str() ), *value ) == -1 ) { ifPyErrorThrowCxxException(); } } void delAttr( const std::string &s ) { if( PyObject_DelAttrString( p, const_cast( s.c_str() ) ) == -1 ) { ifPyErrorThrowCxxException(); } } // PyObject_SetItem is too weird to be using from C++ // so it is intentionally omitted. void delItem( const Object &key ) { if( PyObject_DelItem( p, *key ) == -1 ) { ifPyErrorThrowCxxException(); } } // Equality and comparison use PyObject_Compare }; // End of class Object // Null can be return from when it is require to return NULL to Python from a method class Null: public Object { public: Null() : Object( NULL ) { } virtual ~Null() { } virtual bool accepts( PyObject *pyob ) const { return pyob == NULL; } }; //------------------------------------------------------------ bool operator==( const Object &o1, const Object &o2 ); bool operator!=( const Object &o1, const Object &o2 ); bool operator>=( const Object &o1, const Object &o2 ); bool operator<=( const Object &o1, const Object &o2 ); bool operator<( const Object &o1, const Object &o2 ); bool operator>( const Object &o1, const Object &o2 ); //------------------------------------------------------------ // // Convert an owned Python pointer into a PyCXX Object // inline Object asObject( PyObject *p ) { return Object( p, true ); } // new_reference_to also overloaded below on Object inline PyObject *new_reference_to( PyObject *p ) { Py::_XINCREF( p ); return p; } inline PyObject *new_reference_to( const Object &g ) { PyObject *p = g.ptr(); Py::_XINCREF( p ); return p; } // Python special None value inline Object None() { return Object( Py::_None() ); } // Python special Boolean values inline Object False() { return Object( Py::_False() ); } inline Object True() { return Object( Py::_True() ); } // TMM: 31May'01 - Added the #ifndef so I can exlude iostreams. #ifndef CXX_NO_IOSTREAMS std::ostream &operator<<( std::ostream &os, const Object &ob ); #endif // Class Type class Type: public Object { public: explicit Type( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Type( const Object &ob ) : Object( *ob ) { validate(); } Type( const Type &t ) : Object( t ) { validate(); } Type &operator=( const Object &rhs ) { return *this = *rhs; } Type &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Type_Check( pyob ); } }; // =============================================== // class boolean class Boolean: public Object { public: // Constructor Boolean( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Boolean( const Boolean &ob ) : Object( *ob ) { validate(); } // create from bool Boolean( bool v=false ) { set( PyBool_FromLong( v ? 1 : 0 ), true ); validate(); } explicit Boolean( const Object &ob ) : Object( *ob ) { validate(); } // Assignment acquires new ownership of pointer Boolean &operator=( const Object &rhs ) { return *this = *rhs; } Boolean &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { // accepts any object that can be converted to a boolean return pyob && PyObject_IsTrue( pyob ) != -1; } Boolean &operator=( bool v ) { set( PyBool_FromLong( v ? 1 : 0 ), true ); return *this; } operator bool() const { return as_bool(); } }; // =============================================== // class Long class Long: public Object { public: // Constructor explicit Long( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Long( const Long &ob ) : Object( ob.ptr() ) { validate(); } // try to create from any object explicit Long( const Object &ob ) : Object( PyNumber_Long( *ob ), true ) { validate(); } // create from long explicit Long( long v = 0L ) : Object( PyLong_FromLong( v ), true ) { validate(); } // create from unsigned long explicit Long( unsigned long v ) : Object( PyLong_FromUnsignedLong( v ), true ) { validate(); } // create from int explicit Long( int v ) : Object( PyLong_FromLong( static_cast( v ) ), true ) { validate(); } #ifdef HAVE_LONG_LONG // create from long long explicit Long( PY_LONG_LONG v ) : Object( PyLong_FromLongLong( v ), true ) { validate(); } // create from unsigned long long explicit Long( unsigned PY_LONG_LONG v ) : Object( PyLong_FromUnsignedLongLong( v ), true ) { validate(); } #endif // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Long_Check( pyob ); } // Assignment acquires new ownership of pointer Long &operator=( const Object &rhs ) { return *this = *rhs; } Long &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( PyNumber_Long( rhsp ), true ); return *this; } // assign from an int Long &operator=( int v ) { set( PyLong_FromLong( long( v ) ), true ); return *this; } // assign from long Long &operator=( long v ) { set( PyLong_FromLong( v ), true ); return *this; } // assign from unsigned long Long &operator=( unsigned long v ) { set( PyLong_FromUnsignedLong( v ), true ); return *this; } #ifdef HAVE_LONG_LONG Long &operator=( PY_LONG_LONG v ) { set( PyLong_FromLongLong( v ), true ); return *this; } Long &operator=( unsigned PY_LONG_LONG v ) { set( PyLong_FromUnsignedLongLong( v ), true ); return *this; } #endif // convert to long long as_long() const { return PyLong_AsLong( ptr() ); } operator long() const { return as_long(); } operator int() const { return static_cast( as_long() ); } // convert to unsigned long as_unsigned_long() const { return PyLong_AsUnsignedLong( ptr() ); } // convert to unsigned operator unsigned long() const { return as_unsigned_long(); } double as_double() const { return PyLong_AsDouble( ptr() ); } operator double() const { return as_double(); } #ifdef HAVE_LONG_LONG PY_LONG_LONG as_long_long() const { return PyLong_AsLongLong( ptr() ); } operator PY_LONG_LONG() const { return as_long_long(); } unsigned PY_LONG_LONG as_unsigned_long_long() const { return PyLong_AsUnsignedLongLong( ptr() ); } operator unsigned PY_LONG_LONG() const { return as_unsigned_long_long(); } #endif // prefix ++ Long operator++() { set( PyNumber_Add( ptr(), *Long( 1 ) ) ); return *this; } // postfix ++ Long operator++( int ) { Long a = *this; set( PyNumber_Add( ptr(), *Long( 1 ) ) ); return a; } // prefix -- Long operator--() { set( PyNumber_Subtract( ptr(), *Long( 1 ) ) ); return *this; } // postfix -- Long operator--( int ) { Long a = *this; set( PyNumber_Subtract( ptr(), *Long( 1 ) ) ); return a; } }; #ifdef PYCXX_PYTHON_2TO3 // PyCXX for Python2 had an Int and LongLong classes typedef Long Int; #ifdef HAVE_LONG_LONG typedef Long LongLong; #endif #endif #if 1 //------------------------------------------------------------ // compare operators bool operator!=( const Long &a, const Long &b ); bool operator!=( const Long &a, int b ); bool operator!=( const Long &a, long b ); bool operator!=( int a, const Long &b ); bool operator!=( long a, const Long &b ); //------------------------------ bool operator==( const Long &a, const Long &b ); bool operator==( const Long &a, int b ); bool operator==( const Long &a, long b ); bool operator==( int a, const Long &b ); bool operator==( long a, const Long &b ); //------------------------------ bool operator>( const Long &a, const Long &b ); bool operator>( const Long &a, int b ); bool operator>( const Long &a, long b ); bool operator>( int a, const Long &b ); bool operator>( long a, const Long &b ); //------------------------------ bool operator>=( const Long &a, const Long &b ); bool operator>=( const Long &a, int b ); bool operator>=( const Long &a, long b ); bool operator>=( int a, const Long &b ); bool operator>=( long a, const Long &b ); //------------------------------ bool operator<( const Long &a, const Long &b ); bool operator<( const Long &a, int b ); bool operator<( const Long &a, long b ); bool operator<( int a, const Long &b ); bool operator<( long a, const Long &b ); //------------------------------ bool operator<=( const Long &a, const Long &b ); bool operator<=( int a, const Long &b ); bool operator<=( long a, const Long &b ); bool operator<=( const Long &a, int b ); bool operator<=( const Long &a, long b ); #ifdef HAVE_LONG_LONG //------------------------------ bool operator!=( const Long &a, PY_LONG_LONG b ); bool operator!=( PY_LONG_LONG a, const Long &b ); //------------------------------ bool operator==( const Long &a, PY_LONG_LONG b ); bool operator==( PY_LONG_LONG a, const Long &b ); //------------------------------ bool operator>( const Long &a, PY_LONG_LONG b ); bool operator>( PY_LONG_LONG a, const Long &b ); //------------------------------ bool operator>=( const Long &a, PY_LONG_LONG b ); bool operator>=( PY_LONG_LONG a, const Long &b ); //------------------------------ bool operator<( const Long &a, PY_LONG_LONG b ); bool operator<( PY_LONG_LONG a, const Long &b ); //------------------------------ bool operator<=( const Long &a, PY_LONG_LONG b ); bool operator<=( PY_LONG_LONG a, const Long &b ); #endif #endif // =============================================== // class Float // class Float: public Object { public: // Constructor explicit Float( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Float( const Float &f ) : Object( f ) { validate(); } // make from double explicit Float( double v=0.0 ) : Object( PyFloat_FromDouble( v ), true ) { validate(); } // try to make from any object Float( const Object &ob ) : Object( PyNumber_Float( *ob ), true ) { validate(); } Float &operator=( const Object &rhs ) { return *this = *rhs; } Float &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( PyNumber_Float( rhsp ), true ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Float_Check( pyob ); } double as_double() const { return PyFloat_AsDouble( ptr() ); } // convert to double operator double() const { return as_double(); } // assign from a double Float &operator=( double v ) { set( PyFloat_FromDouble( v ), true ); return *this; } // assign from an int Float &operator=( int v ) { set( PyFloat_FromDouble( double( v ) ), true ); return *this; } // assign from long Float &operator=( long v ) { set( PyFloat_FromDouble( double( v ) ), true ); return *this; } // assign from an Long Float &operator=( const Long &iob ) { set( PyFloat_FromDouble( double( iob.as_long() ) ), true ); return *this; } }; //------------------------------------------------------------ // compare operators bool operator!=( const Float &a, const Float &b ); bool operator!=( const Float &a, double b ); bool operator!=( double a, const Float &b ); //------------------------------ bool operator==( const Float &a, const Float &b ); bool operator==( const Float &a, double b ); bool operator==( double a, const Float &b ); //------------------------------ bool operator>( const Float &a, const Float &b ); bool operator>( const Float &a, double b ); bool operator>( double a, const Float &b ); //------------------------------ bool operator>=( const Float &a, const Float &b ); bool operator>=( const Float &a, double b ); bool operator>=( double a, const Float &b ); //------------------------------ bool operator<( const Float &a, const Float &b ); bool operator<( const Float &a, double b ); bool operator<( double a, const Float &b ); //------------------------------ bool operator<=( const Float &a, const Float &b ); bool operator<=( double a, const Float &b ); bool operator<=( const Float &a, double b ); // =============================================== // class Complex class Complex: public Object { public: // Constructor explicit Complex( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Complex( const Complex &f ) : Object( f ) { validate(); } // make from double explicit Complex( double v=0.0, double w=0.0 ) :Object( PyComplex_FromDoubles( v, w ), true ) { validate(); } Complex &operator=( const Object &rhs ) { return *this = *rhs; } Complex &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Complex_Check( pyob ); } #if !defined( Py_LIMITED_API ) // convert to Py_complex operator Py_complex() const { return PyComplex_AsCComplex( ptr() ); } // assign from a Py_complex Complex &operator=( const Py_complex &v ) { set( PyComplex_FromCComplex( v ), true ); return *this; } #endif // Py_LIMITED_API // assign from a double Complex &operator=( double v ) { set( PyComplex_FromDoubles( v, 0.0 ), true ); return *this; } // assign from an int Complex &operator=( int v ) { set( PyComplex_FromDoubles( double( v ), 0.0 ), true ); return *this; } // assign from long Complex &operator=( long v ) { set( PyComplex_FromDoubles( double( v ), 0.0 ), true ); return *this; } // assign from an Long Complex &operator=( const Long &iob ) { set( PyComplex_FromDoubles( double( iob.as_long() ), 0.0 ), true ); return *this; } double real() const { return PyComplex_RealAsDouble( ptr() ); } double imag() const { return PyComplex_ImagAsDouble( ptr() ); } }; // Sequences // Sequences are here represented as sequences of items of type T. // The base class SeqBase represents that. // In basic Python T is always "Object". // seqref is what you get if you get elements from a non-const SeqBase. // Note: seqref could probably be a nested class in SeqBase but that might stress // some compilers needlessly. Simlarly for mapref later. // While this class is not intended for enduser use, it needs some public // constructors for the benefit of the STL. // See Scott Meyer's More Essential C++ for a description of proxies. // This application is even more complicated. We are doing an unusual thing // in having a double proxy. If we want the STL to work // properly we have to compromise by storing the rvalue inside. The // entire Object API is repeated so that things like s[i].isList() will // work properly. // Still, once in a while a weird compiler message may occur using expressions like x[i] // Changing them to Object( x[i] ) helps the compiler to understand that the // conversion of a seqref to an Object is wanted. template class seqref { protected: SeqBase &s; // the sequence sequence_index_type offset; // item number T the_item; // lvalue public: seqref( SeqBase &seq, sequence_index_type j ) : s( seq ) , offset( j ) , the_item( s.getItem( j ) ) {} seqref( const seqref &range ) : s( range.s ) , offset( range.offset ) , the_item( range.the_item ) {} // TMM: added this seqref ctor for use with STL algorithms seqref( Object &obj ) : s( dynamic_cast< SeqBase&>( obj ) ) , offset( 0 ) , the_item( s.getItem( offset ) ) {} ~seqref() {} operator T() const { // rvalue return the_item; } seqref &operator=( const seqref &rhs ) { //used as lvalue the_item = rhs.the_item; s.setItem( offset, the_item ); return *this; } seqref &operator=( const T &ob ) { // used as lvalue the_item = ob; s.setItem( offset, ob ); return *this; } // forward everything else to the item PyObject *ptr() const { return the_item.ptr(); } int reference_count() const { // the reference count return the_item.reference_count(); } Type type() const { return the_item.type(); } String str() const; String repr() const; bool hasAttr( const std::string &attr_name ) const { return the_item.hasAttr( attr_name ); } Object getAttr( const std::string &attr_name ) const { return the_item.getAttr( attr_name ); } Object getItem( const Object &key ) const { return the_item.getItem( key ); } long hashValue() const { return the_item.hashValue(); } bool isCallable() const { return the_item.isCallable(); } bool isInstance() const { return the_item.isInstance(); } bool isDict() const { return the_item.isDict(); } bool isList() const { return the_item.isList(); } bool isMapping() const { return the_item.isMapping(); } bool isNumeric() const { return the_item.isNumeric(); } bool isSequence() const { return the_item.isSequence(); } bool isTrue() const { return the_item.isTrue(); } bool isType( const Type &t ) const { return the_item.isType( t ); } bool isTuple() const { return the_item.isTuple(); } bool isString() const { return the_item.isString(); } // Commands void setAttr( const std::string &attr_name, const Object &value ) { the_item.setAttr( attr_name, value ); } void delAttr( const std::string &attr_name ) { the_item.delAttr( attr_name ); } void delItem( const Object &key ) { the_item.delItem( key ); } bool operator==( const Object &o2 ) const { return the_item == o2; } bool operator!=( const Object &o2 ) const { return the_item != o2; } bool operator>=( const Object &o2 ) const { return the_item >= o2; } bool operator<=( const Object &o2 ) const { return the_item <= o2; } bool operator<( const Object &o2 ) const { return the_item < o2; } bool operator>( const Object &o2 ) const { return the_item > o2; } }; // end of seqref // class SeqBase // ...the base class for all sequence types template class SeqBase: public Object { public: // STL definitions typedef PyCxx_ssize_t size_type; typedef seqref reference; typedef T const_reference; typedef seqref *pointer; typedef int difference_type; typedef T value_type; // TMM: 26Jun'01 virtual size_type max_size() const { return static_cast( std::string::npos ); // why this constant its not from python } virtual size_type capacity() const { return size(); } virtual void swap( SeqBase &c ) { SeqBase temp = c; c = ptr(); set( temp.ptr() ); } virtual size_type size() const { return PySequence_Length( ptr() ); } explicit SeqBase() :Object( PyTuple_New( 0 ), true ) { validate(); } explicit SeqBase( PyObject *pyob, bool owned=false ) : Object( pyob, owned ) { validate(); } SeqBase( const Object &ob ) : Object( ob ) { validate(); } // Assignment acquires new ownership of pointer SeqBase &operator=( const Object &rhs ) { return *this = *rhs; } SeqBase &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return pyob && PySequence_Check( pyob ); } size_type length() const { return PySequence_Length( ptr() ); } // Element access const T operator[]( sequence_index_type index ) const { return getItem( index ); } seqref operator[]( sequence_index_type index ) { return seqref( *this, index ); } virtual T getItem( sequence_index_type i ) const { return T( asObject( PySequence_GetItem( ptr(), i ) ) ); } virtual void setItem( sequence_index_type i, const T &ob ) { if( PySequence_SetItem( ptr(), i, *ob ) == -1 ) { ifPyErrorThrowCxxException(); } } SeqBase repeat( int count ) const { return SeqBase( PySequence_Repeat( ptr(), count ), true ); } SeqBase concat( const SeqBase &other ) const { return SeqBase( PySequence_Concat( ptr(), *other ), true ); } // more STL compatability const T front() const { return getItem( 0 ); } seqref front() { return seqref( *this, 0 ); } const T back() const { return getItem( size()-1 ); } seqref back() { return seqref( *this, size()-1 ); } void verify_length( size_type required_size ) const { if( size() != required_size ) { throw IndexError( "Unexpected SeqBase length." ); } } void verify_length( size_type min_size, size_type max_size ) const { size_type n = size(); if( n < min_size || n > max_size ) { throw IndexError( "Unexpected SeqBase length." ); } } class iterator: public random_access_iterator_parent( seqref ) { protected: friend class SeqBase; SeqBase *seq; sequence_index_type count; public: ~iterator() {} iterator() : seq( 0 ) , count( 0 ) {} iterator( SeqBase *s, Py_ssize_t where ) : seq( s ) , count( where ) {} iterator( const iterator &other ) : seq( other.seq ) , count( other.count ) {} bool eql( const iterator &other ) const { return seq->ptr() == other.seq->ptr() && count == other.count; } bool neq( const iterator &other ) const { return seq->ptr() != other.seq->ptr() || count != other.count; } bool lss( const iterator &other ) const { return count < other.count; } bool gtr( const iterator &other ) const { return count > other.count; } bool leq( const iterator &other ) const { return count <= other.count; } bool geq( const iterator &other ) const { return count >= other.count; } seqref operator*() { return seqref( *seq, count ); } seqref operator[]( sequence_index_type i ) { return seqref( *seq, count + i ); } iterator &operator=( const iterator &other ) { if( this != &other ) { seq = other.seq; count = other.count; } return *this; } iterator operator+( sequence_index_type n ) const { return iterator( seq, count + n ); } iterator operator-( sequence_index_type n ) const { return iterator( seq, count - n ); } iterator &operator+=( sequence_index_type n ) { count = count + n; return *this; } iterator &operator-=( sequence_index_type n ) { count = count - n; return *this; } sequence_index_type operator-( const iterator &other ) const { if( seq->ptr() != other.seq->ptr() ) { throw RuntimeError( "SeqBase::iterator comparison error" ); } return count - other.count; } // prefix ++ iterator &operator++() { count++; return *this; } // postfix ++ iterator operator++( int ) { return iterator( seq, count++ ); } // prefix -- iterator &operator--() { count--; return *this; } // postfix -- iterator operator--( int ) { return iterator( seq, count-- ); } std::string diagnose() const { std::OSTRSTREAM oss; oss << "iterator diagnosis " << seq << ", " << count << std::ends; return std::string( oss.str() ); } }; // end of class SeqBase::iterator iterator begin() { return iterator( this, 0 ); } iterator end() { return iterator( this, length() ); } class const_iterator : public random_access_iterator_parent( const Object ) { protected: friend class SeqBase; const SeqBase *seq; sequence_index_type count; public: ~const_iterator() {} const_iterator() : seq( 0 ) , count( 0 ) {} const_iterator( const SeqBase *s, sequence_index_type where ) : seq( s ) , count( where ) {} const_iterator( const const_iterator &other ) : seq( other.seq ) , count( other.count ) {} const T operator*() const { return seq->getItem( count ); } const T operator[]( sequence_index_type i ) const { return seq->getItem( count + i ); } const_iterator &operator=( const const_iterator &other ) { if( this != &other ) { seq = other.seq; count = other.count; } return *this; } const_iterator operator+( sequence_index_type n ) const { return const_iterator( seq, count + n ); } bool eql( const const_iterator &other ) const { return seq->ptr() == other.seq->ptr() && count == other.count; } bool neq( const const_iterator &other ) const { return seq->ptr() != other.seq->ptr() || count != other.count; } bool lss( const const_iterator &other ) const { return count < other.count; } bool gtr( const const_iterator &other ) const { return count > other.count; } bool leq( const const_iterator &other ) const { return count <= other.count; } bool geq( const const_iterator &other ) const { return count >= other.count; } const_iterator operator-( sequence_index_type n ) { return const_iterator( seq, count - n ); } const_iterator &operator+=( sequence_index_type n ) { count = count + n; return *this; } const_iterator &operator-=( sequence_index_type n ) { count = count - n; return *this; } int operator-( const const_iterator &other ) const { if( *seq != *other.seq ) { throw RuntimeError( "SeqBase::const_iterator::- error" ); } return count - other.count; } // prefix ++ const_iterator &operator++() { count++; return *this; } // postfix ++ const_iterator operator++( int ) { return const_iterator( seq, count++ ); } // prefix -- const_iterator &operator--() { count--; return *this; } // postfix -- const_iterator operator--( int ) { return const_iterator( seq, count-- ); } }; // end of class SeqBase::const_iterator const_iterator begin() const { return const_iterator( this, 0 ); } const_iterator end() const { return const_iterator( this, length() ); } }; // Here's an important typedef you might miss if reading too fast... typedef SeqBase Sequence; template bool operator==( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator!=( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator< ( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator> ( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator<=( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator>=( const EXPLICIT_TYPENAME SeqBase::iterator &left, const EXPLICIT_TYPENAME SeqBase::iterator &right ); template bool operator==( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); template bool operator!=( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); template bool operator< ( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); template bool operator> ( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); template bool operator<=( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); template bool operator>=( const EXPLICIT_TYPENAME SeqBase::const_iterator &left, const EXPLICIT_TYPENAME SeqBase::const_iterator &right ); extern bool operator==( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator!=( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator< ( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator> ( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator<=( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator>=( const Sequence::iterator &left, const Sequence::iterator &right ); extern bool operator==( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); extern bool operator!=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); extern bool operator< ( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); extern bool operator> ( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); extern bool operator<=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); extern bool operator>=( const Sequence::const_iterator &left, const Sequence::const_iterator &right ); // ================================================== // class Char // Python strings return strings as individual elements. // I'll try having a class Char which is a String of length 1 // #if !defined(Py_LIMITED_API) typedef std::basic_string unicodestring; extern Py_UNICODE unicode_null_string[1]; #endif typedef std::basic_string ucs4string; extern Py_UCS4 ucs4_null_string[1]; class Byte: public Object { public: // Membership virtual bool accepts( PyObject *pyob ) const { return pyob != NULL && Py::_Bytes_Check( pyob ) && PySequence_Length( pyob ) == 1; } explicit Byte( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Byte( const Object &ob ) : Object( ob ) { validate(); } Byte( const std::string &v = "" ) : Object( PyBytes_FromStringAndSize( const_cast( v.c_str() ), 1 ), true ) { validate(); } Byte( char v ) : Object( PyBytes_FromStringAndSize( &v, 1 ), true ) { validate(); } // Assignment acquires new ownership of pointer Byte &operator=( const Object &rhs ) { return *this = *rhs; } Byte &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Assignment from C string Byte &operator=( const std::string &v ) { set( PyBytes_FromStringAndSize( const_cast( v.c_str() ), 1 ), true ); return *this; } Byte &operator=( char v ) { set( PyUnicode_FromStringAndSize( &v, 1 ), true ); return *this; } // Conversion operator Bytes() const; }; class Bytes: public SeqBase { public: // Membership virtual bool accepts( PyObject *pyob ) const { return pyob != NULL && Py::_Bytes_Check( pyob ); } virtual size_type capacity() const { return max_size(); } explicit Bytes( PyObject *pyob, bool owned = false ) : SeqBase( pyob, owned ) { validate(); } Bytes( const Object &ob ) : SeqBase( ob ) { validate(); } Bytes() : SeqBase( PyBytes_FromStringAndSize( "", 0 ), true ) { validate(); } Bytes( const std::string &v ) : SeqBase( PyBytes_FromStringAndSize( const_cast( v.data() ), v.length() ), true ) { validate(); } Bytes( const std::string &v, Py_ssize_t vsize ) : SeqBase( PyBytes_FromStringAndSize( const_cast( v.data() ), vsize ), true ) { validate(); } Bytes( const char *v ) : SeqBase( PyBytes_FromString( v ), true ) { validate(); } Bytes( const char *v, Py_ssize_t vsize ) : SeqBase( PyBytes_FromStringAndSize( const_cast( v ), vsize ), true ) { validate(); } // Assignment acquires new ownership of pointer Bytes &operator=( const Object &rhs ) { return *this = *rhs; } Bytes &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Assignment from C string Bytes &operator=( const std::string &v ) { set( PyBytes_FromStringAndSize( const_cast( v.data() ), v.length() ), true ); return *this; } String decode( const char *encoding, const char *error="strict" ); // Queries virtual size_type size() const { return PyBytes_Size( ptr() ); } operator std::string() const { return as_std_string(); } std::string as_std_string() const { return std::string( PyBytes_AsString( ptr() ), static_cast( PyBytes_Size( ptr() ) ) ); } }; class Char: public Object { public: // Membership virtual bool accepts( PyObject *pyob ) const { return (pyob != 0 && Py::_Unicode_Check( pyob ) && PySequence_Length( pyob ) == 1); } explicit Char( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Char( const Object &ob ) : Object( ob ) { validate(); } Char( int v ) : Object( PyUnicode_FromOrdinal( v ), true ) { validate(); } #if !defined( Py_LIMITED_API ) Char( Py_UNICODE v ) : Object( PyUnicode_FromOrdinal( v ), true ) { validate(); } #endif #if !defined( Py_LIMITED_API ) Char( const unicodestring &v ) : Object( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, const_cast( v.data() ),1 ), true ) { validate(); } #endif // Assignment acquires new ownership of pointer Char &operator=( const Object &rhs ) { return *this = *rhs; } Char &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } #if !defined( Py_LIMITED_API ) Char &operator=( const unicodestring &v ) { set( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, const_cast( v.data() ), 1 ), true ); return *this; } #endif #if !defined( Py_LIMITED_API ) Char &operator=( int v_ ) { Py_UNICODE v( static_cast( v_ ) ); set( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, &v, 1 ), true ); return *this; } #endif #if !defined( Py_LIMITED_API ) Char &operator=( Py_UNICODE v ) { set( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, &v, 1 ), true ); return *this; } #endif long ord() { #if !defined( Py_LIMITED_API ) return static_cast( PyUnicode_ReadChar( ptr(), 0 ) ); #else // we know that a Char() is 1 unicode code point // that fits in 2 wchar_t on windows at worst wchar_t buf[2]; Py_ssize_t num_elements = PyUnicode_AsWideChar( ptr(), buf, 2 ); // just one wchar_t that easy if( num_elements == 1 ) { return static_cast( buf[0] ); } // must be a pair of utf-16 surragates - convert to a code point if( num_elements == 2 ) { // convert from utf-16 to a code-point return static_cast( ((buf[0]-0xd800)*0x400) + (buf[1]-0xdc00) + 0x10000); } return 0; #endif } // Conversion operator String() const; }; class String: public SeqBase { public: virtual size_type capacity() const { return max_size(); } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob != NULL && Py::_Unicode_Check( pyob ); } explicit String( PyObject *pyob, bool owned = false ) : SeqBase( pyob, owned ) { validate(); } String( const Object &ob ) : SeqBase( ob ) { validate(); } String() : SeqBase( PyUnicode_FromString( "" ), true ) { validate(); } String( const char *latin1 ) : SeqBase( PyUnicode_FromString( latin1 ), true ) { validate(); } String( const std::string &latin1 ) : SeqBase( PyUnicode_FromStringAndSize( latin1.c_str(), latin1.size() ), true ) { validate(); } String( const char *latin1, Py_ssize_t size ) : SeqBase( PyUnicode_FromStringAndSize( latin1, size ), true ) { validate(); } /* [Taken from Pythons's unicode.h] Many of these APIs take two arguments encoding and errors. These parameters encoding and errors have the same semantics as the ones of the builtin unicode() API. Setting encoding to NULL causes the default encoding to be used. Error handling is set by errors which may also be set to NULL meaning to use the default handling defined for the codec. Default error handling for all builtin codecs is "strict" (ValueErrors are raised). The codecs all use a similar interface. Only deviation from the generic ones are documented. */ String( const std::string &s, const char *encoding, const char *errors=NULL ) : SeqBase( PyUnicode_Decode( s.c_str(), s.size(), encoding, errors ), true ) { validate(); } String( const char *s, const char *encoding, const char *errors=NULL ) : SeqBase( PyUnicode_Decode( s, strlen(s), encoding, errors ), true ) { validate(); } String( const char *s, Py_ssize_t size, const char *encoding, const char *errors=NULL ) : SeqBase( PyUnicode_Decode( s, size, encoding, errors ), true ) { validate(); } #if !defined( Py_LIMITED_API ) && !defined( Py_UNICODE_WIDE ) // Need these c'tors becuase Py_UNICODE is 2 bytes // User may use "int" or "unsigned int" as the unicode type String( const unsigned int *s, int length ) : SeqBase( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, reinterpret_cast( s ), length ), true ) { validate(); } String( const int *s, int length ) : SeqBase( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, reinterpret_cast( s ), length ), true ) { validate(); } #endif #if !defined( Py_LIMITED_API ) String( const Py_UNICODE *s, int length ) : SeqBase( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, s, length ), true ) { validate(); } #endif // Assignment acquires new ownership of pointer String &operator=( const Object &rhs ) { return *this = *rhs; } String &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } #if !defined( Py_LIMITED_API ) String &operator=( const unicodestring &v ) { set( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, const_cast( v.data() ), v.length() ), true ); return *this; } #endif #if !defined( Py_UNICODE_WIDE ) && !defined( Py_LIMITED_API ) String &operator=( const ucs4string &v ) { set( PyUnicode_FromKindAndData( PyUnicode_4BYTE_KIND, reinterpret_cast( v.data() ), v.length() ), true ); return *this; } #endif // Encode Bytes encode( const char *encoding, const char *error="strict" ) const { return Bytes( PyUnicode_AsEncodedString( ptr(), encoding, error ), true ); } #if !defined( Py_LIMITED_API ) // Queries virtual size_type size() const { return PyUnicode_GetLength( ptr() ); } #endif #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 9 #if !defined( Py_LIMITED_API ) const Py_UNICODE *unicode_data() const { return PyUnicode_AS_UNICODE( ptr() ); } #endif #if !defined( Py_LIMITED_API ) unicodestring as_unicodestring() const { return unicodestring( unicode_data(), PyUnicode_GetLength( ptr() ) ); } #endif #endif ucs4string as_ucs4string() const { Py_UCS4 *buf = new Py_UCS4[ size() ]; if( PyUnicode_AsUCS4( ptr(), buf, size(), 0 ) == NULL ) { ifPyErrorThrowCxxException(); } ucs4string ucs4( buf, size() ); delete[] buf; return ucs4; } operator std::string() const { // use the default encoding return as_std_string( NULL ); } std::string as_std_string( const char *encoding=NULL, const char *error="strict" ) const { Bytes b( encode( encoding, error ) ); return b.as_std_string(); } }; // ================================================== // class Tuple class Tuple: public Sequence { public: virtual void setItem( sequence_index_type offset, const Object&ob ) { // note PyTuple_SetItem is a thief... if( PyTuple_SetItem( ptr(), offset, new_reference_to( ob ) ) == -1 ) { ifPyErrorThrowCxxException(); } } // Constructor explicit Tuple( PyObject *pyob, bool owned = false ) : Sequence( pyob, owned ) { validate(); } Tuple( const Object &ob ) : Sequence( ob ) { validate(); } // New tuple of a given size explicit Tuple( int size=0 ) { set( PyTuple_New( size ), true ); validate(); for( sequence_index_type i=0; i < size; i++ ) { if( PyTuple_SetItem( ptr(), i, new_reference_to( Py::_None() ) ) == -1 ) { ifPyErrorThrowCxxException(); } } } // Tuple from any sequence explicit Tuple( const Sequence &s ) { sequence_index_type limit( sequence_index_type( s.length() ) ); set( PyTuple_New( limit ), true ); validate(); for( sequence_index_type i=0; i < limit; i++ ) { if( PyTuple_SetItem( ptr(), i, new_reference_to( s[i] ) ) == -1 ) { ifPyErrorThrowCxxException(); } } } // Assignment acquires new ownership of pointer Tuple &operator=( const Object &rhs ) { return *this = *rhs; } Tuple &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Tuple_Check( pyob ); } Tuple getSlice( int i, int j ) const { return Tuple( PySequence_GetSlice( ptr(), i, j ), true ); } }; class TupleN: public Tuple { public: TupleN() : Tuple( 0 ) { } TupleN( const Object &obj1 ) : Tuple( 1 ) { setItem( 0, obj1 ); } TupleN( const Object &obj1, const Object &obj2 ) : Tuple( 2 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3 ) : Tuple( 3 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4 ) : Tuple( 4 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5 ) : Tuple( 5 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6 ) : Tuple( 6 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7 ) : Tuple( 7 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7, const Object &obj8 ) : Tuple( 8 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); setItem( 7, obj8 ); } TupleN( const Object &obj1, const Object &obj2, const Object &obj3, const Object &obj4, const Object &obj5, const Object &obj6, const Object &obj7, const Object &obj8, const Object &obj9 ) : Tuple( 9 ) { setItem( 0, obj1 ); setItem( 1, obj2 ); setItem( 2, obj3 ); setItem( 3, obj4 ); setItem( 4, obj5 ); setItem( 5, obj6 ); setItem( 6, obj7 ); setItem( 7, obj8 ); setItem( 8, obj9 ); } virtual ~TupleN() { } }; // ================================================== // class List class List: public Sequence { public: // Constructor explicit List( PyObject *pyob, bool owned = false ) : Sequence( pyob, owned ) { validate(); } List( const Object &ob ) : Sequence( ob ) { validate(); } // Creation at a fixed size List( size_type size = 0 ) { set( PyList_New( size ), true ); validate(); for( sequence_index_type i=0; i < size; i++ ) { if( PyList_SetItem( ptr(), i, new_reference_to( Py::_None() ) ) == -1 ) { ifPyErrorThrowCxxException(); } } } // List from a sequence List( const Sequence &s ) : Sequence() { size_type n = s.length(); set( PyList_New( n ), true ); validate(); for( sequence_index_type i=0; i < n; i++ ) { if( PyList_SetItem( ptr(), i, new_reference_to( s[i] ) ) == -1 ) { ifPyErrorThrowCxxException(); } } } virtual size_type capacity() const { return max_size(); } // Assignment acquires new ownership of pointer List &operator=( const Object &rhs ) { return *this = *rhs; } List &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_List_Check( pyob ); } List getSlice( int i, int j ) const { return List( PyList_GetSlice( ptr(), i, j ), true ); } void setSlice( Py_ssize_t i, Py_ssize_t j, const Object &v ) { if( PyList_SetSlice( ptr(), i, j, *v ) == -1 ) { ifPyErrorThrowCxxException(); } } void append( const Object &ob ) { if( PyList_Append( ptr(), *ob ) == -1 ) { ifPyErrorThrowCxxException(); } } void extend( const Object &ob ) { setSlice( size(), size(), ob ); } void insert( int i, const Object &ob ) { if( PyList_Insert( ptr(), i, *ob ) == -1 ) { ifPyErrorThrowCxxException(); } } void sort() { if( PyList_Sort( ptr() ) == -1 ) { ifPyErrorThrowCxxException(); } } void reverse() { if( PyList_Reverse( ptr() ) == -1 ) { ifPyErrorThrowCxxException(); } } }; // Mappings // ================================================== template class mapref { protected: MapBase &s; // the map Object key; // item key T the_item; public: mapref( MapBase &map, const std::string &k ) : s( map ), the_item() { key = String( k ); if( map.hasKey( key ) ) the_item = map.getItem( key ); } mapref( MapBase &map, const Object &k ) : s( map ), key( k ), the_item() { if( map.hasKey( key ) ) the_item = map.getItem( key ); } virtual ~mapref() {} // MapBase stuff // lvalue mapref &operator=( const mapref &other ) { if( this != &other ) { the_item = other.the_item; s.setItem( key, other.the_item ); } return *this; } mapref &operator=( const T &ob ) { the_item = ob; s.setItem( key, ob ); return *this; } // rvalue operator T() const { return the_item; } // forward everything else to the_item PyObject *ptr() const { return the_item.ptr(); } int reference_count() const { // the mapref count return the_item.reference_count(); } Type type() const { return the_item.type(); } String str() const { return the_item.str(); } String repr() const { return the_item.repr(); } bool hasAttr( const std::string &attr_name ) const { return the_item.hasAttr( attr_name ); } Object getAttr( const std::string &attr_name ) const { return the_item.getAttr( attr_name ); } Object getItem( const Object &k ) const { return the_item.getItem( k ); } long hashValue() const { return the_item.hashValue(); } bool isCallable() const { return the_item.isCallable(); } bool isInstance() const { return the_item.isInstance(); } bool isList() const { return the_item.isList(); } bool isMapping() const { return the_item.isMapping(); } bool isNumeric() const { return the_item.isNumeric(); } bool isSequence() const { return the_item.isSequence(); } bool isTrue() const { return the_item.isTrue(); } bool isType( const Type &t ) const { return the_item.isType( t ); } bool isTuple() const { return the_item.isTuple(); } bool isString() const { return the_item.isString(); } // Commands void setAttr( const std::string &attr_name, const Object &value ) { the_item.setAttr( attr_name, value ); } void delAttr( const std::string &attr_name ) { the_item.delAttr( attr_name ); } void delItem( const Object &k ) { the_item.delItem( k ); } }; // end of mapref #if 0 // TMM: now for mapref template< class T > bool operator==( const mapref &left, const mapref &right ) { return true; // NOT completed. } template< class T > bool operator!=( const mapref &left, const mapref &right ) { return true; // not completed. } #endif template class MapBase: public Object { protected: explicit MapBase() {} public: // reference: proxy class for implementing [] // TMM: 26Jun'01 - the types // If you assume that Python mapping is a hash_map... // hash_map::value_type is not assignable, but //( *it ).second = data must be a valid expression typedef PyCxx_ssize_t size_type; typedef Object key_type; typedef mapref data_type; typedef std::pair< const T, T > value_type; typedef std::pair< const T, mapref > reference; typedef const std::pair< const T, const T > const_reference; typedef std::pair< const T, mapref > pointer; // Constructor explicit MapBase( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } // TMM: 02Jul'01 - changed MapBase to Object in next line MapBase( const Object &ob ) : Object( ob ) { validate(); } // Assignment acquires new ownership of pointer MapBase &operator=( const Object &rhs ) { return *this = *rhs; } MapBase &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && PyMapping_Check( pyob ); } // Clear -- PyMapping Clear is missing // void clear() { List k = keys(); for( List::iterator i = k.begin(); i != k.end(); i++ ) { delItem( *i ); } } virtual Py_ssize_t size() const { return PyMapping_Length( ptr() ); } // Element Access T operator[]( const std::string &key ) const { return getItem( key ); } T operator[]( const Object &key ) const { return getItem( key ); } mapref operator[]( const char *key ) { return mapref( *this, key ); } mapref operator[]( const std::string &key ) { return mapref( *this, key ); } mapref operator[]( const Object &key ) { return mapref( *this, key ); } Py_ssize_t length() const { return PyMapping_Length( ptr() ); } bool hasKey( const std::string &s ) const { return PyMapping_HasKeyString( ptr(),const_cast( s.c_str() ) ) != 0; } bool hasKey( const Object &s ) const { return PyMapping_HasKey( ptr(), s.ptr() ) != 0; } T getItem( const std::string &s ) const { return T( asObject( PyMapping_GetItemString( ptr(), const_cast( s.c_str() ) ) ) ); } T getItem( const Object &s ) const { return T( asObject( PyObject_GetItem( ptr(), s.ptr() ) ) ); } virtual void setItem( const char *s, const Object &ob ) { if( PyMapping_SetItemString( ptr(), const_cast( s ), *ob ) == -1 ) { ifPyErrorThrowCxxException(); } } virtual void setItem( const std::string &s, const Object &ob ) { if( PyMapping_SetItemString( ptr(), const_cast( s.c_str() ), *ob ) == -1 ) { ifPyErrorThrowCxxException(); } } virtual void setItem( const Object &s, const Object &ob ) { if( PyObject_SetItem( ptr(), s.ptr(), ob.ptr() ) == -1 ) { ifPyErrorThrowCxxException(); } } void delItem( const std::string &s ) { if( PyMapping_DelItemString( ptr(), const_cast( s.c_str() ) ) == -1 ) { ifPyErrorThrowCxxException(); } } void delItem( const Object &s ) { if( PyMapping_DelItem( ptr(), *s ) == -1 ) { ifPyErrorThrowCxxException(); } } // Queries List keys() const { return List( PyMapping_Keys( ptr() ), true ); } List values() const { // each returned item is a (key, value) pair return List( PyMapping_Values( ptr() ), true ); } List items() const { return List( PyMapping_Items( ptr() ), true ); } class iterator { // : public forward_iterator_parent( std::pair ) { protected: typedef std::forward_iterator_tag iterator_category; typedef std::pair< const T, T > value_type; typedef int difference_type; typedef std::pair< const T, mapref > pointer; typedef std::pair< const T, mapref > reference; friend class MapBase; // MapBase *map; List keys; // for iterating over the map sequence_index_type pos; // index into the keys public: ~iterator() {} iterator() : map( 0 ) , keys() , pos( 0 ) {} iterator( MapBase *m, bool end = false ) : map( m ) , keys( m->keys() ) , pos( end ? keys.length() : 0 ) {} iterator( const iterator &other ) : map( other.map ) , keys( other.keys ) , pos( other.pos ) {} iterator( MapBase *map_, List keys_, int pos_ ) : map( map_ ) , keys( keys_ ) , pos( pos_ ) {} reference operator*() { Object key = keys[ pos ]; return std::make_pair( key, mapref( *map, key ) ); } iterator &operator=( const iterator &other ) { if( this != &other ) { map = other.map; keys = other.keys; pos = other.pos; } return *this; } bool eql( const iterator &other ) const { return map->ptr() == other.map->ptr() && pos == other.pos; } bool neq( const iterator &other ) const { return map->ptr() != other.map->ptr() || pos != other.pos; } // pointer operator->() { // return ; // } // prefix ++ iterator &operator++() { pos++; return *this; } // postfix ++ iterator operator++( int ) { return iterator( map, keys, pos++ ); } // prefix -- iterator &operator--() { pos--; return *this; } // postfix -- iterator operator--( int ) { return iterator( map, keys, pos-- ); } std::string diagnose() const { std::OSTRSTREAM oss; oss << "iterator diagnosis " << map << ", " << pos << std::ends; return std::string( oss.str() ); } }; // end of class MapBase::iterator iterator begin() { return iterator( this, false ); } iterator end() { return iterator( this, true ); } class const_iterator { protected: typedef std::forward_iterator_tag iterator_category; typedef const std::pair< const T, T > value_type; typedef int difference_type; typedef const std::pair< const T, T > pointer; typedef const std::pair< const T, T > reference; friend class MapBase; const MapBase *map; List keys; // for iterating over the map Py_ssize_t pos; // index into the keys public: ~const_iterator() {} const_iterator() : map( 0 ) , keys() , pos() {} const_iterator( const MapBase *m, List k, Py_ssize_t p ) : map( m ) , keys( k ) , pos( p ) {} const_iterator( const const_iterator &other ) : map( other.map ) , keys( other.keys ) , pos( other.pos ) {} bool eql( const const_iterator &other ) const { return map->ptr() == other.map->ptr() && pos == other.pos; } bool neq( const const_iterator &other ) const { return map->ptr() != other.map->ptr() || pos != other.pos; } // const_reference operator*() { // Object key = *pos; // return std::make_pair( key, map->[key] ); // GCC < 3 barfes on this line at the '['. // } const_reference operator*() { Object key = keys[ pos ]; return std::make_pair( key, mapref( *map, key ) ); } const_iterator &operator=( const const_iterator &other ) { if( this != &other ) { map = other.map; keys = other.keys; pos = other.pos; } return *this; } // prefix ++ const_iterator &operator++() { pos++; return *this; } // postfix ++ const_iterator operator++( int ) { return const_iterator( map, keys, pos++ ); } // prefix -- const_iterator &operator--() { pos--; return *this; } // postfix -- const_iterator operator--( int ) { return const_iterator( map, keys, pos-- ); } }; // end of class MapBase::const_iterator const_iterator begin() const { return const_iterator( this, keys(), 0 ); } const_iterator end() const { return const_iterator( this, keys(), length() ); } }; // end of MapBase typedef MapBase Mapping; template bool operator==( const EXPLICIT_TYPENAME MapBase::iterator &left, const EXPLICIT_TYPENAME MapBase::iterator &right ); template bool operator!=( const EXPLICIT_TYPENAME MapBase::iterator &left, const EXPLICIT_TYPENAME MapBase::iterator &right ); template bool operator==( const EXPLICIT_TYPENAME MapBase::const_iterator &left, const EXPLICIT_TYPENAME MapBase::const_iterator &right ); template bool operator!=( const EXPLICIT_TYPENAME MapBase::const_iterator &left, const EXPLICIT_TYPENAME MapBase::const_iterator &right ); extern bool operator==( const Mapping::iterator &left, const Mapping::iterator &right ); extern bool operator!=( const Mapping::iterator &left, const Mapping::iterator &right ); extern bool operator==( const Mapping::const_iterator &left, const Mapping::const_iterator &right ); extern bool operator!=( const Mapping::const_iterator &left, const Mapping::const_iterator &right ); // ================================================== // class Dict class Dict: public Mapping { public: // Constructor explicit Dict( PyObject *pyob, bool owned=false ) : Mapping( pyob, owned ) { validate(); } Dict( const Object &ob ) : Mapping( ob ) { validate(); } // Creation Dict() { set( PyDict_New(), true ); validate(); } // Assignment acquires new ownership of pointer Dict &operator=( const Object &rhs ) { return *this = *rhs; } Dict &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && Py::_Dict_Check( pyob ); } }; class Callable: public Object { public: // Constructor explicit Callable() : Object() {} explicit Callable( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } Callable( const Object &ob ) : Object( ob ) { validate(); } // Assignment acquires new ownership of pointer Callable &operator=( const Object &rhs ) { return *this = *rhs; } Callable &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) { set( rhsp ); } return *this; } // Membership virtual bool accepts( PyObject *pyob ) const { return pyob && PyCallable_Check( pyob ); } // Call Object apply( const Tuple &args ) const { PyObject *result = PyObject_CallObject( ptr(), args.ptr() ); if( result == NULL ) { ifPyErrorThrowCxxException(); } return asObject( result ); } // Call with keywords Object apply( const Tuple &args, const Dict &kw ) const { #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 9 PyObject *result = PyObject_Call( ptr(), args.ptr(), kw.ptr() ); #else PyObject *result = PyEval_CallObjectWithKeywords( ptr(), args.ptr(), kw.ptr() ); #endif if( result == NULL ) { ifPyErrorThrowCxxException(); } return asObject( result ); } #if (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 9) || (defined( Py_LIMITED_API ) && Py_LIMITED_API+0 >= 0x03090000) Object apply() const { PyObject *result = PyObject_CallNoArgs( ptr() ); return asObject( result ); } Object apply( PyObject *pargs ) const { if( pargs == 0 ) { return apply( Tuple() ); } else { return apply( Tuple( pargs ) ); } } #else Object apply( PyObject *pargs = 0 ) const { if( pargs == 0 ) { return apply( Tuple() ); } else { return apply( Tuple( pargs ) ); } } #endif }; class Module: public Object { public: explicit Module( PyObject *pyob, bool owned = false ) : Object( pyob, owned ) { validate(); } // Construct from module name explicit Module( const std::string &s ) : Object() { PyObject *m = PyImport_AddModule( const_cast( s.c_str() ) ); set( m, false ); validate(); } // Copy constructor acquires new ownership of pointer Module( const Module &ob ) : Object( *ob ) { validate(); } Module &operator=( const Object &rhs ) { return *this = *rhs; } Module &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } Dict getDict() const { return Dict( PyModule_GetDict( ptr() ) ); // Caution -- PyModule_GetDict returns borrowed reference! } }; // Call function helper inline Object Object::callMemberFunction( const std::string &function_name ) const { Callable target( getAttr( function_name ) ); return target.apply(); } inline Object Object::callMemberFunction( const std::string &function_name, const Tuple &args ) const { Callable target( getAttr( function_name ) ); return target.apply( args ); } inline Object Object::callMemberFunction( const std::string &function_name, const Tuple &args, const Dict &kw ) const { Callable target( getAttr( function_name ) ); return target.apply( args, kw ); } // Numeric interface inline Object operator+( const Object &a ) { return asObject( PyNumber_Positive( *a ) ); } inline Object operator-( const Object &a ) { return asObject( PyNumber_Negative( *a ) ); } inline Object abs( const Object &a ) { return asObject( PyNumber_Absolute( *a ) ); } //------------------------------------------------------------ // operator + inline Object operator+( const Object &a, const Object &b ) { return asObject( PyNumber_Add( *a, *b ) ); } inline Object operator+( const Object &a, int j ) { return asObject( PyNumber_Add( *a, *Long( j ) ) ); } inline Object operator+( const Object &a, long j ) { return asObject( PyNumber_Add( *a, *Long( j ) ) ); } inline Object operator+( const Object &a, double v ) { return asObject( PyNumber_Add( *a, *Float( v ) ) ); } inline Object operator+( int j, const Object &b ) { return asObject( PyNumber_Add( *Long( j ), *b ) ); } inline Object operator+( long j, const Object &b ) { return asObject( PyNumber_Add( *Long( j ), *b ) ); } inline Object operator+( double v, const Object &b ) { return asObject( PyNumber_Add( *Float( v ), *b ) ); } //------------------------------------------------------------ // operator - inline Object operator-( const Object &a, const Object &b ) { return asObject( PyNumber_Subtract( *a, *b ) ); } inline Object operator-( const Object &a, int j ) { return asObject( PyNumber_Subtract( *a, *Long( j ) ) ); } inline Object operator-( const Object &a, double v ) { return asObject( PyNumber_Subtract( *a, *Float( v ) ) ); } inline Object operator-( int j, const Object &b ) { return asObject( PyNumber_Subtract( *Long( j ), *b ) ); } inline Object operator-( double v, const Object &b ) { return asObject( PyNumber_Subtract( *Float( v ), *b ) ); } //------------------------------------------------------------ // operator * inline Object operator*( const Object &a, const Object &b ) { return asObject( PyNumber_Multiply( *a, *b ) ); } inline Object operator*( const Object &a, int j ) { return asObject( PyNumber_Multiply( *a, *Long( j ) ) ); } inline Object operator*( const Object &a, double v ) { return asObject( PyNumber_Multiply( *a, *Float( v ) ) ); } inline Object operator*( int j, const Object &b ) { return asObject( PyNumber_Multiply( *Long( j ), *b ) ); } inline Object operator*( double v, const Object &b ) { return asObject( PyNumber_Multiply( *Float( v ), *b ) ); } //------------------------------------------------------------ // operator / inline Object operator/( const Object &a, const Object &b ) { return asObject( PyNumber_TrueDivide( *a, *b ) ); } inline Object operator/( const Object &a, int j ) { return asObject( PyNumber_TrueDivide( *a, *Long( j ) ) ); } inline Object operator/( const Object &a, double v ) { return asObject( PyNumber_TrueDivide( *a, *Float( v ) ) ); } inline Object operator/( int j, const Object &b ) { return asObject( PyNumber_TrueDivide( *Long( j ), *b ) ); } inline Object operator/( double v, const Object &b ) { return asObject( PyNumber_TrueDivide( *Float( v ), *b ) ); } //------------------------------------------------------------ // operator % inline Object operator%( const Object &a, const Object &b ) { return asObject( PyNumber_Remainder( *a, *b ) ); } inline Object operator%( const Object &a, int j ) { return asObject( PyNumber_Remainder( *a, *Long( j ) ) ); } inline Object operator%( const Object &a, double v ) { return asObject( PyNumber_Remainder( *a, *Float( v ) ) ); } inline Object operator%( int j, const Object &b ) { return asObject( PyNumber_Remainder( *Long( j ), *b ) ); } inline Object operator%( double v, const Object &b ) { return asObject( PyNumber_Remainder( *Float( v ), *b ) ); } //------------------------------------------------------------ // type inline Object type( const BaseException & ) // return the type of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch( &ptype, &pvalue, &ptrace ); Object result; if( ptype ) result = ptype; PyErr_Restore( ptype, pvalue, ptrace ); return result; } inline Object value( const BaseException & ) // return the value of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch( &ptype, &pvalue, &ptrace ); Object result; if( pvalue ) result = pvalue; PyErr_Restore( ptype, pvalue, ptrace ); return result; } inline Object trace( const BaseException & ) // return the traceback of the error { PyObject *ptype, *pvalue, *ptrace; PyErr_Fetch( &ptype, &pvalue, &ptrace ); Object result; if( ptrace ) result = ptrace; PyErr_Restore( ptype, pvalue, ptrace ); return result; } template String seqref::str() const { return the_item.str(); } template String seqref::repr() const { return the_item.repr(); } } // namespace Py #endif // __CXX_Objects__h pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/Config.hxx000644 000765 000024 00000010217 13662724004 022316 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __PyCXX_config_hh__ #define __PyCXX_config_hh__ #if defined( Py_LIMITED_API ) && Py_LIMITED_API+0 < 0x03040000 #error "PyCXX support for Python limited API requires version 3.4 or newer. Py_LIMITED_API=0x03040000" #endif // // Microsoft VC++ 6.0 has no traits // #if defined( _MSC_VER ) # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 #elif defined( __GNUC__ ) # if __GNUC__ >= 3 # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 # else # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 0 #endif // // Assume all other compilers do // #else // Macros to deal with deficiencies in compilers # define STANDARD_LIBRARY_HAS_ITERATOR_TRAITS 1 #endif #if STANDARD_LIBRARY_HAS_ITERATOR_TRAITS # define random_access_iterator_parent(itemtype) std::iterator #else # define random_access_iterator_parent(itemtype) std::random_access_iterator #endif // // Which C++ standard is in use? // #if defined( _MSC_VER ) # if _MSC_VER <= 1200 // MSVC++ 6.0 # define PYCXX_ISO_CPP_LIB 0 # define STR_STREAM # define TEMPLATE_TYPENAME class # else # define PYCXX_ISO_CPP_LIB 1 # define STR_STREAM # define TEMPLATE_TYPENAME typename # endif #elif defined( __GNUC__ ) # if __GNUC__ >= 3 # define PYCXX_ISO_CPP_LIB 1 # define STR_STREAM # define TEMPLATE_TYPENAME typename # else # define PYCXX_ISO_CPP_LIB 0 # define STR_STREAM # define TEMPLATE_TYPENAME class # endif #endif #if PYCXX_ISO_CPP_LIB # define STR_STREAM # define OSTRSTREAM ostringstream # define EXPLICIT_TYPENAME typename # define EXPLICIT_CLASS class # define TEMPLATE_TYPENAME typename #else # define STR_STREAM # define OSTRSTREAM ostrstream # define EXPLICIT_TYPENAME # define EXPLICIT_CLASS # define TEMPLATE_TYPENAME class #endif // before 3.2 Py_hash_t was missing #ifndef PY_MAJOR_VERSION #error not defined PY_MAJOR_VERSION #endif #if PY_MINOR_VERSION < 2 typedef long int Py_hash_t; #endif #endif // __PyCXX_config_hh__ pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/cxx_standard_exceptions.hxx000644 000765 000024 00000012212 13330412771 026026 0ustar00barrystaff000000 000000 #if !defined( PYCXX_STANDARD_EXCEPTION ) #pragma error( "define PYCXX_STANDARD_EXCEPTION before including" ) #endif // taken for python3.5 documentation // EnvironmentError and IOError are not used in Python3 //PYCXX_STANDARD_EXCEPTION( EnvironmentError, QQQ ) //PYCXX_STANDARD_EXCEPTION( IOError, QQQ ) // 5.4 Exception hierarchy PYCXX_STANDARD_EXCEPTION( SystemExit, BaseException ) PYCXX_STANDARD_EXCEPTION( KeyboardInterrupt, BaseException ) PYCXX_STANDARD_EXCEPTION( GeneratorExit, BaseException ) #if !defined( PYCXX_6_2_COMPATIBILITY ) PYCXX_STANDARD_EXCEPTION( Exception, BaseException ) #endif PYCXX_STANDARD_EXCEPTION( StopIteration, Exception ) #if !defined(MS_WINDOWS) && ((defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x03050000 && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5) || (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5)) PYCXX_STANDARD_EXCEPTION( StopAsyncIteration, Exception ) #endif // Windows builds of python 3.5 do not export the symbol PyExc_StopAsyncIteration - need atleast 3.6 #if defined(MS_WINDOWS) && ((defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x03050000 && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 6) || (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5)) PYCXX_STANDARD_EXCEPTION( StopAsyncIteration, Exception ) #endif PYCXX_STANDARD_EXCEPTION( ArithmeticError, Exception ) PYCXX_STANDARD_EXCEPTION( FloatingPointError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( OverflowError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( ZeroDivisionError, ArithmeticError ) PYCXX_STANDARD_EXCEPTION( AssertionError, Exception ) PYCXX_STANDARD_EXCEPTION( AttributeError, Exception ) PYCXX_STANDARD_EXCEPTION( BufferError, Exception ) PYCXX_STANDARD_EXCEPTION( EOFError, Exception ) PYCXX_STANDARD_EXCEPTION( ImportError, Exception ) PYCXX_STANDARD_EXCEPTION( LookupError, Exception ) PYCXX_STANDARD_EXCEPTION( IndexError, LookupError ) PYCXX_STANDARD_EXCEPTION( KeyError, LookupError ) PYCXX_STANDARD_EXCEPTION( MemoryError, Exception ) PYCXX_STANDARD_EXCEPTION( NameError, Exception ) PYCXX_STANDARD_EXCEPTION( UnboundLocalError, NameError ) PYCXX_STANDARD_EXCEPTION( OSError, Exception ) #if (defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x03060000 && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 6) || (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 4) PYCXX_STANDARD_EXCEPTION( BlockingIOError, OSError ) PYCXX_STANDARD_EXCEPTION( ChildProcessError,OSError ) PYCXX_STANDARD_EXCEPTION( ConnectionError, OSError ) PYCXX_STANDARD_EXCEPTION( BrokenPipeError, ConnectionError ) PYCXX_STANDARD_EXCEPTION( ConnectionAbortedError, ConnectionError ) PYCXX_STANDARD_EXCEPTION( ConnectionRefusedError, ConnectionError ) PYCXX_STANDARD_EXCEPTION( ConnectionResetError, ConnectionError ) PYCXX_STANDARD_EXCEPTION( FileExistsError, OSError ) PYCXX_STANDARD_EXCEPTION( FileNotFoundError, OSError ) PYCXX_STANDARD_EXCEPTION( InterruptedError, OSError ) PYCXX_STANDARD_EXCEPTION( IsADirectoryError, OSError ) PYCXX_STANDARD_EXCEPTION( NotADirectoryError, OSError ) PYCXX_STANDARD_EXCEPTION( PermissionError, OSError ) PYCXX_STANDARD_EXCEPTION( ProcessLookupError, OSError ) PYCXX_STANDARD_EXCEPTION( TimeoutError, OSError ) #endif PYCXX_STANDARD_EXCEPTION( ReferenceError, Exception ) PYCXX_STANDARD_EXCEPTION( RuntimeError, Exception ) PYCXX_STANDARD_EXCEPTION( NotImplementedError, RuntimeError ) #if !defined(MS_WINDOWS) && ((defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x03050000 && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5) || (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5)) PYCXX_STANDARD_EXCEPTION( RecursionError, RuntimeError ) #endif // Windows builds of python 3.5 do not export the symbol PyExc_RecursionError - need atleast 3.6 #if defined(MS_WINDOWS) && ((defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x03050000 && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 6) || (!defined( Py_LIMITED_API ) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5)) PYCXX_STANDARD_EXCEPTION( RecursionError, RuntimeError ) #endif PYCXX_STANDARD_EXCEPTION( SyntaxError, Exception ) PYCXX_STANDARD_EXCEPTION( IndentationError, SyntaxError ) PYCXX_STANDARD_EXCEPTION( TabError, IndentationError ) PYCXX_STANDARD_EXCEPTION( SystemError, Exception ) PYCXX_STANDARD_EXCEPTION( TypeError, Exception ) PYCXX_STANDARD_EXCEPTION( ValueError, Exception ) PYCXX_STANDARD_EXCEPTION( UnicodeError, ValueError ) PYCXX_STANDARD_EXCEPTION( UnicodeDecodeError, UnicodeError ) PYCXX_STANDARD_EXCEPTION( UnicodeEncodeError, UnicodeError ) PYCXX_STANDARD_EXCEPTION( UnicodeTranslateError,UnicodeError ) pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/CxxDebug.hxx000644 000765 000024 00000000402 11146615306 022614 0ustar00barrystaff000000 000000 // // CxxDebug.hxx // // Copyright (c) 2008 Barry A. Scott // #ifndef __CXX_Debug_hxx #define __CXX_Debug_hxx // // Functions useful when debugging PyCXX // #ifdef PYCXX_DEBUG extern void bpt(); extern void printRefCount( PyObject *obj ); #endif #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/ExtensionOldType.hxx000644 000765 000024 00000031764 13305260623 024374 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionOldType__h #define __CXX_ExtensionOldType__h namespace Py { template class PythonExtension : public PythonExtensionBase { public: static PyTypeObject *type_object() { return behaviors().type_object(); } static bool check( PyObject *p ) { // is p like me? return p->ob_type == type_object(); } static bool check( const Object &ob ) { return check( ob.ptr() ); } // // every object needs getattr implemented // to support methods // virtual Object getattr( const char *name ) { return getattr_methods( name ); } PyObject *selfPtr() { return this; } Object self() { return asObject( this ); } protected: explicit PythonExtension() : PythonExtensionBase() { PyObject_Init( this, type_object() ); // every object must support getattr behaviors().supportGetattr(); } virtual ~PythonExtension() {} static PythonType &behaviors() { static PythonType* p; if( p == NULL ) { #if defined( _CPPRTTI ) || defined( __GNUG__ ) const char *default_name =( typeid( T ) ).name(); #else const char *default_name = "unknown"; #endif p = new PythonType( sizeof( T ), 0, default_name ); p->set_tp_dealloc( extension_object_deallocator ); } return *p; } typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); typedef std::map *> method_map_t; // support the default attributes, __name__, __doc__ and methods virtual Object getattr_default( const char *_name ) { std::string name( _name ); #if !defined( Py_LIMITED_API ) if( name == "__name__" && type_object()->tp_name != NULL ) { return Py::String( type_object()->tp_name ); } #endif #if !defined( Py_LIMITED_API ) if( name == "__doc__" && type_object()->tp_doc != NULL ) { return Py::String( type_object()->tp_doc ); } #endif // trying to fake out being a class for help() // else if( name == "__bases__" ) // { // return Py::Tuple( 0 ); // } // else if( name == "__module__" ) // { // return Py::Nothing(); // } // else if( name == "__dict__" ) // { // return Py::Dict(); // } return getattr_methods( _name ); } // turn a name into function object virtual Object getattr_methods( const char *_name ) { std::string name( _name ); method_map_t &mm = methods(); // see if name exists and get entry with method EXPLICIT_TYPENAME method_map_t::const_iterator i = mm.find( name ); if( i == mm.end() ) { if( name == "__methods__" ) { List methods; i = mm.begin(); EXPLICIT_TYPENAME method_map_t::const_iterator i_end = mm.end(); for( ; i != i_end; ++i ) methods.append( String( (*i).first ) ); return methods; } throw AttributeError( name ); } MethodDefExt *method_def = i->second; Tuple self( 2 ); self[0] = Object( this ); self[1] = Object( PyCapsule_New( method_def, NULL, NULL ), true ); PyObject *func = PyCFunction_NewEx( &method_def->ext_meth_def, self.ptr(), NULL ); return Object(func, true); } // check that all methods added are unique static void check_unique_method_name( const char *name ) { method_map_t &mm = methods(); EXPLICIT_TYPENAME method_map_t::const_iterator i; i = mm.find( name ); if( i != mm.end() ) throw AttributeError( name ); } static void add_noargs_method( const char *name, method_noargs_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_noargs_call_handler, doc ); } static void add_varargs_method( const char *name, method_varargs_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_varargs_call_handler, doc ); } static void add_keyword_method( const char *name, method_keyword_function_t function, const char *doc="" ) { check_unique_method_name( name ); method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_keyword_call_handler, doc ); } private: static method_map_t &methods( void ) { static method_map_t *map_of_methods = NULL; if( map_of_methods == NULL ) map_of_methods = new method_map_t; return *map_of_methods; } // Note: Python calls noargs as varargs buts args==NULL static PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ) ); Object result; // Adding try & catch in case of STL debug-mode exceptions. #ifdef _STLP_DEBUG try { result = (self->*meth_def->ext_noargs_function)(); } catch( std::__stl_debug_exception ) { // throw cxx::RuntimeError( sErrMsg ); throw RuntimeError( "Error message not set yet." ); } #else result = (self->*meth_def->ext_noargs_function)(); #endif // _STLP_DEBUG return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ) ); Tuple args( _args ); Object result; // Adding try & catch in case of STL debug-mode exceptions. #ifdef _STLP_DEBUG try { result = (self->*meth_def->ext_varargs_function)( args ); } catch( std::__stl_debug_exception ) { throw RuntimeError( "Error message not set yet." ); } #else result = (self->*meth_def->ext_varargs_function)( args ); #endif // _STLP_DEBUG return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ) { try { Tuple self_and_name_tuple( _self_and_name_tuple ); PyObject *self_in_cobject = self_and_name_tuple[0].ptr(); T *self = static_cast( self_in_cobject ); MethodDefExt *meth_def = reinterpret_cast *>( PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ) ); Tuple args( _args ); // _keywords may be NULL so be careful about the way the dict is created Dict keywords; if( _keywords != NULL ) keywords = Dict( _keywords ); Object result( ( self->*meth_def->ext_keyword_function )( args, keywords ) ); return new_reference_to( result.ptr() ); } catch( BaseException & ) { return 0; } } static void extension_object_deallocator( PyObject* t ) { delete (T *)( t ); } // // prevent the compiler generating these unwanted functions // explicit PythonExtension( const PythonExtension &other ); void operator=( const PythonExtension &rhs ); }; // // ExtensionObject is an Object that will accept only T's. // template class ExtensionObject: public Object { public: explicit ExtensionObject( PyObject *pyob ) : Object( pyob ) { validate(); } ExtensionObject( const ExtensionObject &other ) : Object( *other ) { validate(); } ExtensionObject( const Object &other ) : Object( *other ) { validate(); } ExtensionObject &operator=( const Object &rhs ) { return( *this = *rhs ); } ExtensionObject &operator=( PyObject *rhsp ) { if( ptr() != rhsp ) set( rhsp ); return *this; } virtual bool accepts( PyObject *pyob ) const { return( pyob && T::check( pyob ) ); } // // Obtain a pointer to the PythonExtension object // T *extensionObject( void ) { return static_cast( ptr() ); } }; } // Namespace Py // End of __CXX_ExtensionOldType__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/PythonType.hxx000644 000765 000024 00000022343 13662723705 023246 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_PythonType__h #define __CXX_PythonType__h #if defined( Py_LIMITED_API ) #include #endif namespace Py { class PythonType { public: // if you define one sequence method you must define // all of them except the assigns PythonType( size_t base_size, int itemsize, const char *default_name ); virtual ~PythonType(); const char *getName() const; const char *getDoc() const; PyTypeObject *type_object() const; PythonType &name( const char *nam ); PythonType &doc( const char *d ); PythonType &supportClass( void ); #if defined( PYCXX_PYTHON_2TO3 ) && !defined( Py_LIMITED_API ) && PY_MINOR_VERSION <= 7 PythonType &supportPrint( void ); #endif PythonType &supportGetattr( void ); PythonType &supportSetattr( void ); PythonType &supportGetattro( void ); PythonType &supportSetattro( void ); #ifdef PYCXX_PYTHON_2TO3 PythonType &supportCompare( void ); #endif PythonType &supportRichCompare( void ); PythonType &supportRepr( void ); PythonType &supportStr( void ); PythonType &supportHash( void ); PythonType &supportCall( void ); #define B( n ) (1<<(n)) enum { support_iter_iter = B(0), support_iter_iternext = B(1) }; PythonType &supportIter( int methods_to_support= support_iter_iter | support_iter_iternext ); enum { support_sequence_length = B(0), support_sequence_repeat = B(1), support_sequence_item = B(2), support_sequence_slice = B(3), support_sequence_concat = B(4), support_sequence_ass_item = B(5), support_sequence_ass_slice = B(6), support_sequence_inplace_concat = B(7), support_sequence_inplace_repeat = B(8), support_sequence_contains = B(9) }; PythonType &supportSequenceType( int methods_to_support= support_sequence_length | support_sequence_repeat | support_sequence_item | support_sequence_slice | support_sequence_concat ); enum { support_mapping_length = B(0), support_mapping_subscript = B(1), support_mapping_ass_subscript = B(2) }; PythonType &supportMappingType( int methods_to_support= support_mapping_length | support_mapping_subscript ); enum { support_number_add = B(0), support_number_subtract = B(1), support_number_multiply = B(2), support_number_remainder = B(3), support_number_divmod = B(4), support_number_power = B(5), support_number_negative = B(6), support_number_positive = B(7), support_number_absolute = B(8), support_number_invert = B(9), support_number_lshift = B(10), support_number_rshift = B(11), support_number_and = B(12), support_number_xor = B(13), support_number_or = B(14), support_number_int = B(15), support_number_float = B(16), support_number_floor_divide = B(17), support_number_true_divide = B(18), support_number_index = B(19), #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 support_number_matrix_multiply = B(20), #endif // start a new bit mask for inplace that avoid using more then 32 bits in methods_to_support support_number_inplace_floor_divide = B(0), support_number_inplace_true_divide = B(1), support_number_inplace_add = B(2), support_number_inplace_subtract = B(3), support_number_inplace_multiply = B(4), support_number_inplace_remainder = B(5), support_number_inplace_power = B(6), support_number_inplace_lshift = B(7), support_number_inplace_rshift = B(8), support_number_inplace_and = B(9), support_number_inplace_xor = B(10), support_number_inplace_or = B(11) #if PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION >= 5 , support_number_inplace_matrix_multiply = B(12) #endif }; PythonType &supportNumberType( int methods_to_support= support_number_add | support_number_subtract | support_number_multiply | support_number_remainder | support_number_divmod | support_number_power | support_number_negative | support_number_positive | support_number_absolute | support_number_invert | support_number_lshift | support_number_rshift | support_number_and | support_number_xor | support_number_or | support_number_int | support_number_float, int inplace_methods_to_support=0 ); #if !defined( Py_LIMITED_API ) enum { support_buffer_getbuffer = B(0), support_buffer_releasebuffer = B(1) }; PythonType &supportBufferType( int methods_to_support= support_buffer_getbuffer | support_buffer_releasebuffer ); #endif #undef B PythonType &set_tp_dealloc( void (*tp_dealloc)( PyObject * ) ); PythonType &set_tp_init( int (*tp_init)( PyObject *self, PyObject *args, PyObject *kwds ) ); PythonType &set_tp_new( PyObject *(*tp_new)( PyTypeObject *subtype, PyObject *args, PyObject *kwds ) ); PythonType &set_methods( PyMethodDef *methods ); // call once all support functions have been called to ready the type bool readyType(); protected: #if defined( Py_LIMITED_API ) std::unordered_map slots; PyType_Spec *spec; PyTypeObject *tp_object; #else PyTypeObject *table; PySequenceMethods *sequence_table; PyMappingMethods *mapping_table; PyNumberMethods *number_table; PyBufferProcs *buffer_table; #endif private: // // prevent the compiler generating these unwanted functions // PythonType( const PythonType &tb ); // unimplemented void operator=( const PythonType &t ); // unimplemented }; } // Namespace Py // End of __CXX_PythonType__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/CXX/Python3/ExtensionModule.hxx000644 000765 000024 00000021127 12733537475 024251 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __CXX_ExtensionModule__h #define __CXX_ExtensionModule__h namespace Py { class ExtensionModuleBase { public: ExtensionModuleBase( const char *name ); virtual ~ExtensionModuleBase(); Module module( void ) const; // only valid after initialize() has been called Dict moduleDictionary( void ) const; // only valid after initialize() has been called virtual Object invoke_method_noargs( void *method_def ) = 0; virtual Object invoke_method_keyword( void *method_def, const Tuple &_args, const Dict &_keywords ) = 0; virtual Object invoke_method_varargs( void *method_def, const Tuple &_args ) = 0; const std::string &name() const; const std::string &fullName() const; // what is returned from PyInit_ function Object moduleObject( void ) const; protected: // Initialize the module void initialize( const char *module_doc ); const std::string m_module_name; const std::string m_full_module_name; MethodTable m_method_table; PyModuleDef m_module_def; PyObject *m_module; private: // // prevent the compiler generating these unwanted functions // ExtensionModuleBase( const ExtensionModuleBase & ); //unimplemented void operator=( const ExtensionModuleBase & ); //unimplemented }; // Note: Python calls noargs as varargs buts args==NULL extern "C" PyObject *method_noargs_call_handler( PyObject *_self_and_name_tuple, PyObject * ); extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple, PyObject *_args ); extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple, PyObject *_args, PyObject *_keywords ); template class ExtensionModule : public ExtensionModuleBase { public: ExtensionModule( const char *name ) : ExtensionModuleBase( name ) {} virtual ~ExtensionModule() {} protected: typedef Object (T::*method_noargs_function_t)(); typedef Object (T::*method_varargs_function_t)( const Tuple &args ); typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws ); typedef std::map *> method_map_t; static void add_noargs_method( const char *name, method_noargs_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_noargs_call_handler, doc ); } static void add_varargs_method( const char *name, method_varargs_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_varargs_call_handler, doc ); } static void add_keyword_method( const char *name, method_keyword_function_t function, const char *doc="" ) { method_map_t &mm = methods(); mm[ std::string( name ) ] = new MethodDefExt( name, function, method_keyword_call_handler, doc ); } void initialize( const char *module_doc="" ) { ExtensionModuleBase::initialize( module_doc ); Dict dict( moduleDictionary() ); // // put each of the methods into the modules dictionary // so that we get called back at the function in T. // method_map_t &mm = methods(); EXPLICIT_TYPENAME method_map_t::const_iterator i = mm.begin(); EXPLICIT_TYPENAME method_map_t::const_iterator i_end = mm.end(); for ( ; i != i_end; ++i ) { MethodDefExt *method_def = (*i).second; static PyObject *self = PyCapsule_New( this, NULL, NULL ); Tuple args( 2 ); args[0] = Object( self, true ); args[1] = Object( PyCapsule_New( method_def, NULL, NULL ), true ); assert( m_module != NULL ); PyObject *func = PyCFunction_NewEx ( &method_def->ext_meth_def, new_reference_to( args ), m_module ); method_def->py_method = Object( func, true ); dict[ (*i).first ] = method_def->py_method; } } protected: // Tom Malcolmson reports that derived classes need access to these static method_map_t &methods( void ) { static method_map_t *map_of_methods = NULL; if( map_of_methods == NULL ) map_of_methods = new method_map_t; return *map_of_methods; } // this invoke function must be called from within a try catch block virtual Object invoke_method_noargs( void *method_def ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_noargs_function)(); } // this invoke function must be called from within a try catch block virtual Object invoke_method_varargs( void *method_def, const Tuple &args ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_varargs_function)( args ); } // this invoke function must be called from within a try catch block virtual Object invoke_method_keyword( void *method_def, const Tuple &args, const Dict &keywords ) { // cast up to the derived class, method_def and call T *self = static_cast( this ); MethodDefExt *meth_def = reinterpret_cast *>( method_def ); return (self->*meth_def->ext_keyword_function)( args, keywords ); } private: // // prevent the compiler generating these unwanted functions // ExtensionModule( const ExtensionModule & ); //unimplemented void operator=( const ExtensionModule & ); //unimplemented }; } // Namespace Py // End of __CXX_ExtensionModule__h #endif pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/000755 000765 000024 00000000000 14477104307 020604 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/000755 000765 000024 00000000000 14477104307 020603 5ustar00barrystaff000000 000000 pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/python.cxx000644 000765 000024 00000004776 11146616710 022662 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- /* Minimal main program -- everything is loaded from the library */ #include "CXX/WrapPython.h" #include extern "C" int Py_Main(int argc, char** argv); extern "C" void initexample(); extern "C" void Py_Initialize(); int main(int argc, char** argv) { std::cout << "Greetings. Type from example import *; test()" << std::endl; Py_Initialize(); initexample(); return Py_Main(argc, argv); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/rangetest.cxx000644 000765 000024 00000010735 13662723705 023335 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Extensions.hxx" #include "range.hxx" // This test also illustrates using the Py namespace explicitly extern void debug_check_ref_queue(); std::string test_extension_object() { debug_check_ref_queue(); Py::Tuple a; // just something that isn't an range... Py::ExtensionObject r1( new range(1, 20, 3) ); if(range::check(a)) std::cout << "range::check failed (1)."; if(!range::check(r1)) return "r::check failed (2)."; debug_check_ref_queue(); RangeSequence r2(1, 10, 2); if(r2[1] != Py::Int(3)) return "RangeSequence check failed. "; debug_check_ref_queue(); // calling an extension object method using getattr Py::Callable w(r2.getAttr("amethod")); Py::Tuple args(1); Py::Int j(3); args[0]=j; Py::List answer(w.apply(args)); if(answer[0] != r2) return ("Extension object test failed (1)"); if(answer[1] != args[0]) return ("Extension object test failed (2)"); // calling an extension object method using callMemberFunction Py::List answer2( r2.callMemberFunction( "amethod", args ) ); if(answer2[0] != r2) return ("Extension object test failed (3)"); if(answer2[1] != args[0]) return ("Extension object test failed (4)"); debug_check_ref_queue(); Py::Tuple nv(3); nv[0] = Py::Int(1); nv[1] = Py::Int(20); nv[2] = Py::Int(3); Py::Tuple unused; Py::List r2value; r2.assign(unused, nv); r2value = r2.value(unused); if(r2value[1] != Py::Int(4)) return("Extension object test failed (5)"); debug_check_ref_queue(); // repeat using getattr w = r2.getAttr("assign"); Py::Tuple the_arguments(2); the_arguments[0] = unused; the_arguments[1] = nv; w.apply(the_arguments); debug_check_ref_queue(); w = r2.getAttr("value"); Py::Tuple one_arg(1); one_arg[0] = unused; r2value = w.apply(one_arg); if(r2value[1] != Py::Int(4)) return("Extension object test failed. (6)"); debug_check_ref_queue(); { Py::ExtensionObject rheap( new range(1, 10, 2) ); debug_check_ref_queue(); // delete rheap } debug_check_ref_queue(); return "ok."; } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/range.hxx000644 000765 000024 00000012733 13662723705 022442 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __r__h #define __r__h #include "CXX/Extensions.hxx" #include STR_STREAM // Making an extension object class range: public Py::PythonExtension { public: long start; long stop; long step; range(long start_, long stop_, long step_ = 1L) { start = start_; stop = stop_; step = step_; std::cout << "range object created " << this << std::endl; } virtual ~range() { std::cout << "range object destroyed " << this << std::endl; } static void init_type(void); long length() const { return (stop - start + 1)/step; } long item(int i) const { if( i >= length() ) // this exception stops a Python for loop over range. throw Py::IndexError("index too large"); return start + i * step; } range *slice( int i, int j ) const { int first = start + i * step; int last = start + j * step; return new range(first, last, step); } range* extend(int k) const { return new range(start, stop + k, step); } std::string asString() const { std::OSTRSTREAM s; s << "range(" << start << ", " << stop << ", " << step << ")" << std::ends; return std::string(s.str()); } // override functions from PythonExtension virtual Py::Object repr(); virtual Py::Object getattr( const char *name ); virtual Py_ssize_t sequence_length(); virtual Py::Object sequence_item( Py_ssize_t i ); virtual Py::Object sequence_concat( const Py::Object &j ); virtual Py::Object sequence_slice( Py_ssize_t i, Py_ssize_t j ); // define python methods of this object Py::Object amethod (const Py::Tuple& args); Py::Object value (const Py::Tuple& args); Py::Object assign (const Py::Tuple& args); Py::Object reference_count (const Py::Tuple& /*args*/) { return Py::LongLong(this->ob_refcnt); } Py::Object c_value(const Py::Tuple&) const { Py::List result; for(int i = start; i <= stop; i += step) { result.append(Py::Int(i)); } return result; } void c_assign(const Py::Tuple&, const Py::Object& rhs) { Py::Tuple w(rhs); w.verify_length(3); start = long(Py::Int(w[0])); stop = long(Py::Int(w[1])); step = long(Py::Int(w[2])); } }; class RangeSequence: public Py::SeqBase { public: explicit RangeSequence (PyObject *pyob, bool owned = false): Py::SeqBase(pyob, owned) { validate(); } explicit RangeSequence(int start, int stop, int step = 1) { set (new range(start, stop, step), true); } RangeSequence(const RangeSequence& other): Py::SeqBase(*other) { validate(); } RangeSequence& operator= (const Py::Object& rhs) { return (*this = *rhs); } RangeSequence& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set(rhsp); return *this; } virtual bool accepts(PyObject *pyob) const { return pyob && range::check(pyob); } Py::Object value(const Py::Tuple& t) const { return static_cast(ptr())->c_value(t); } void assign(const Py::Tuple& t, const Py::Object& rhs) { static_cast(ptr())->c_assign(t, rhs); } }; #endif pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/pycxx_iter.hxx000644 000765 000024 00000003604 13662723705 023541 0ustar00barrystaff000000 000000 #include "CXX/Extensions.hxx" #include #include #include class IterT : public Py::PythonExtension { int from, count, last; int fwd_iter; bool do_it_reversed; public: static void init_type(void); // announce properties and methods IterT(int _from, int _last) : from(_from) , last(_last) , fwd_iter(0) , do_it_reversed(false) {} Py::Object repr() { std::string s; std::ostringstream s_out; s_out << "IterT count(" << count << ")"; return Py::String(s_out.str()); } Py::Object reversed(const Py::Tuple&) { do_it_reversed= true; // indicate backward iteration return Py::Object(this,false); // increment the refcount } Py::Object iter() { if( do_it_reversed ) { fwd_iter = -1; do_it_reversed=false; } else fwd_iter = 1; // indicate forward iteration return Py::Object(this,false); // increment the refcount } PyObject* iternext() { int ct; if( ! fwd_iter ) return NULL; // signal StopIteration if( fwd_iter > 0 ) { if( fwd_iter == 1 ) { ct = from; count = from+1; fwd_iter=2; } else if( count <= last ) ct= count++; else return NULL; // signal StopIteration } else if( fwd_iter == -1 ) { ct = last; count = last-1; fwd_iter=-2; } else if( count >= from ) ct= count--; else return NULL; // signal StopIteration Py::Int Result(ct); Result.increment_reference_count(); return Result.ptr(); } }; pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/test_simple.py000644 000765 000024 00000003753 12740663530 023514 0ustar00barrystaff000000 000000 import sys import simple print( '--- module func ---' ) simple.mod_func_noargs() simple.mod_func_varargs( 6, 7 ) simple.mod_func_keyword() simple.mod_func_keyword( 4, 5 ) simple.mod_func_keyword( 4, 5, name=6, value=7 ) print( '--- old_style_class func ---' ) old_style_class = simple.old_style_class() old_style_class.old_style_class_func_noargs() old_style_class.old_style_class_func_varargs() old_style_class.old_style_class_func_varargs( 4 ) old_style_class.old_style_class_func_keyword() old_style_class.old_style_class_func_keyword( name=6, value=7 ) old_style_class.old_style_class_func_keyword( 4, 5 ) old_style_class.old_style_class_func_keyword( 4, 5, name=6, value=7 ) print( '--- Derived func ---' ) class Derived(simple.new_style_class): def __init__( self ): simple.new_style_class.__init__( self ) def derived_func( self ): print( 'derived_func' ) super( Derived, self ).func_noargs() def func_noargs( self ): print( 'derived func_noargs' ) d = Derived() print( dir( d ) ) d.derived_func() d.func_noargs() d.func_varargs() d.func_varargs( 4 ) d.func_keyword() d.func_keyword( name=6, value=7 ) d.func_keyword( 4, 5 ) d.func_keyword( 4, 5, name=6, value=7 ) print( d.value ) d.value = "a string" print( d.value ) d.new_var = 99 print( 'TEST: pass derived class to C++ world' ) result = simple.derived_class_test( d, 5, 9 ) print( 'derived_class_test result %r' % (result,) ) print( '--- new_style_class func ---' ) new_style_class = simple.new_style_class() print( dir( new_style_class ) ) new_style_class.func_noargs() new_style_class.func_varargs() new_style_class.func_varargs( 4 ) new_style_class.func_keyword() new_style_class.func_keyword( name=6, value=7 ) new_style_class.func_keyword( 4, 5 ) new_style_class.func_keyword( 4, 5, name=6, value=7 ) try: new_style_class.func_noargs_raise_exception() print 'Error: did not raised RuntimeError' sys.exit( 1 ) except RuntimeError, e: print 'Raised %r' % (str(e),) new_style_class = None pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/pycxx_iter.cxx000644 000765 000024 00000002613 13662723705 023533 0ustar00barrystaff000000 000000 #include "pycxx_iter.hxx" #include "CXX/Objects.hxx" void IterT::init_type() { behaviors().name("IterT"); behaviors().doc("IterT(ini_count)"); // you must have overwritten the virtual functions // Py::Object iter() and Py::Object iternext() behaviors().supportIter(); // set entries in the Type Table behaviors().supportRepr(); add_varargs_method("reversed",&IterT::reversed,"reversed()"); behaviors().readyType(); } class MyIterModule : public Py::ExtensionModule { public: MyIterModule() : Py::ExtensionModule("pycxx_iter") { IterT::init_type(); add_varargs_method("IterT",&MyIterModule::new_IterT,"IterT(from,last)"); initialize("MyIterModule documentation"); // register with Python } virtual ~MyIterModule() {} private: Py::Object new_IterT(const Py::Tuple& args) { if (args.length() != 2) { throw Py::RuntimeError("Incorrect # of args to IterT(from,to)."); } return Py::asObject(new IterT(Py::Int(args[0]),Py::Int(args[1]))); } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif extern "C" EXPORT_SYMBOL void initpycxx_iter() { // the following constructor call registers our extension module // with the Python runtime system static MyIterModule* IterTest = new MyIterModule; } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/test_pycxx_iter.py000644 000765 000024 00000000323 13305260623 024401 0ustar00barrystaff000000 000000 import sys sys.path.insert( 0, 'pyds%d%d' % (sys.version_info[0], sys.version_info[1]) ) import pycxx_iter IT=pycxx_iter.IterT(5,7) for i in IT: print i, IT print "refcount of IT:",sys.getrefcount(IT) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/setup.py000644 000765 000024 00000006431 13074106026 022311 0ustar00barrystaff000000 000000 #----------------------------------------------------------------------------- # # Copyright (c) 1998 - 2007, The Regents of the University of California # Produced at the Lawrence Livermore National Laboratory # All rights reserved. # # This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The # full copyright notice is contained in the file COPYRIGHT located at the root # of the PyCXX distribution. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the disclaimer below. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the disclaimer (as noted below) in the # documentation and/or materials provided with the distribution. # - Neither the name of the UC/LLNL nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF # CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. # #----------------------------------------------------------------------------- import os, sys from distutils.core import setup, Extension support_dir = os.path.normpath( os.path.join( sys.prefix, 'share', 'python%d.%d' % (sys.version_info[0],sys.version_info[1]), 'CXX') ) if os.name == 'posix': CXX_libraries = ['stdc++','m'] else: CXX_libraries = [] setup( name = "CXXDemo", version = "7.0", maintainer = "Barry Scott", maintainer_email = "barry-scott@users.sourceforge.net", description = "Demo of facility for extending Python with C++", url = "http://cxx.sourceforge.net", packages = ['CXX'], package_dir = {'CXX': '.'}, ext_modules = [ Extension( 'CXX.example', sources = ['example.cxx', 'range.cxx', 'rangetest.cxx', os.path.join(support_dir,'cxxsupport.cxx'), os.path.join(support_dir,'cxx_extensions.cxx'), os.path.join(support_dir,'cxx_exceptions.cxx'), os.path.join(support_dir,'IndirectPythonInterface.cxx'), os.path.join(support_dir,'cxxextensions.c') ] )] ) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/example.def000644 000765 000024 00000000026 11146616710 022710 0ustar00barrystaff000000 000000 EXPORTS initexample pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/simple.cxx000644 000765 000024 00000026305 13662723705 022632 0ustar00barrystaff000000 000000 // // Copyright (c) 2008-2010 Barry A. Scott // // // simple_moduile.cxx // // This module defines a single function. // #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include class new_style_class: public Py::PythonClass< new_style_class > { public: new_style_class( Py::PythonClassInstance *self, Py::Tuple &args, Py::Dict &kwds ) : Py::PythonClass< new_style_class >::PythonClass( self, args, kwds ) , m_value( "default value" ) { std::cout << "new_style_class c'tor Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } } virtual ~new_style_class() { std::cout << "~new_style_class." << std::endl; } long cxx_method( long a, long b ) { return a * b + 3; } static void init_type(void) { behaviors().name( "new_style_class" ); behaviors().doc( "documentation for new_style_class class" ); behaviors().supportGetattro(); behaviors().supportSetattro(); PYCXX_ADD_NOARGS_METHOD( func_noargs, new_style_class_func_noargs, "docs for new_style_class_func_noargs" ); PYCXX_ADD_VARARGS_METHOD( func_varargs, new_style_class_func_varargs, "docs for new_style_class_func_varargs" ); PYCXX_ADD_KEYWORDS_METHOD( func_keyword, new_style_class_func_keyword, "docs for new_style_class_func_keyword" ); PYCXX_ADD_NOARGS_METHOD( func_noargs_raise_exception, new_style_class_func_noargs_raise_exception, "docs for new_style_class_func_noargs_raise_exception" ); // Call to make the type ready for use behaviors().readyType(); } Py::Object new_style_class_func_noargs( void ) { std::cout << "new_style_class_func_noargs Called." << std::endl; std::cout << "value ref count " << m_value.reference_count() << std::endl; return Py::None(); } PYCXX_NOARGS_METHOD_DECL( new_style_class, new_style_class_func_noargs ) Py::Object new_style_class_func_varargs( const Py::Tuple &args ) { std::cout << "new_style_class_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } PYCXX_VARARGS_METHOD_DECL( new_style_class, new_style_class_func_varargs ) Py::Object new_style_class_func_keyword( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "new_style_class_func_keyword Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::None(); } PYCXX_KEYWORDS_METHOD_DECL( new_style_class, new_style_class_func_keyword ) Py::Object new_style_class_func_noargs_raise_exception( void ) { std::cout << "new_style_class_func_noargs_raise_exception Called." << std::endl; throw Py::RuntimeError( "its an error" ); } PYCXX_NOARGS_METHOD_DECL( new_style_class, new_style_class_func_noargs_raise_exception ) Py::Object getattro( const Py::String &name_ ) { std::string name( name_.as_std_string( "utf-8" ) ); if( name == "value" ) { return m_value; } else { return genericGetAttro( name_ ); } } int setattro( const Py::String &name_, const Py::Object &value ) { std::string name( name_.as_std_string( "utf-8" ) ); if( name == "value" ) { m_value = value; return 0; } else { return genericSetAttro( name_, value ); } } Py::String m_value; }; class old_style_class: public Py::PythonExtension< old_style_class > { public: old_style_class() { } virtual ~old_style_class() { } static void init_type(void) { behaviors().name( "old_style_class" ); behaviors().doc( "documentation for old_style_class class" ); behaviors().supportGetattr(); add_noargs_method( "old_style_class_func_noargs", &old_style_class::old_style_class_func_noargs ); add_varargs_method( "old_style_class_func_varargs", &old_style_class::old_style_class_func_varargs ); add_keyword_method( "old_style_class_func_keyword", &old_style_class::old_style_class_func_keyword ); } // override functions from PythonExtension virtual Py::Object getattr( const char *name ) { return getattr_methods( name ); } Py::Object old_style_class_func_noargs( void ) { std::cout << "old_style_class_func_noargs Called." << std::endl; return Py::None(); } Py::Object old_style_class_func_varargs( const Py::Tuple &args ) { std::cout << "old_style_class_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } Py::Object old_style_class_func_keyword( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "old_style_class_func_keyword Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::None(); } }; class simple_module : public Py::ExtensionModule { public: simple_module() : Py::ExtensionModule( "simple" ) // this must be name of the file on disk e.g. simple.so or simple.pyd { old_style_class::init_type(); new_style_class::init_type(); add_noargs_method( "mod_func_noargs", &simple_module::mod_func_noargs, "documentation for mod_func_noargs()" ); add_varargs_method( "mod_func_varargs", &simple_module::mod_func_varargs, "documentation for mod_func_varargs()" ); add_keyword_method( "mod_func_keyword", &simple_module::mod_func_keyword, "documentation for mod_func_keyword()" ); add_varargs_method("old_style_class", &simple_module::factory_old_style_class, "documentation for old_style_class()"); add_keyword_method("make_instance", &simple_module::make_instance, "documentation for make_instance()"); add_keyword_method("decode_test", &simple_module::decode_test, "documentation for decode_test()"); add_keyword_method("encode_test", &simple_module::encode_test, "documentation for encode_test()"); add_keyword_method("derived_class_test", &simple_module::derived_class_test, "documentation for derived_class_test()"); // after initialize the moduleDictionary will exist initialize( "documentation for the simple module" ); Py::Dict d( moduleDictionary() ); d["var"] = Py::String( "var value" ); Py::Object x( new_style_class::type() ); d["new_style_class"] = x; } virtual ~simple_module() {} private: Py::Object decode_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::String s( args[0] ); return s.decode("utf-8"); } Py::Object encode_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::String s( args[0] ); return s.encode("utf-8"); } Py::Object derived_class_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::PythonClassObject py_nsc( args[0] ); new_style_class *cxx_nsc = py_nsc.getCxxObject(); Py::Long a( args[1] ); Py::Long b( args[2] ); long result = cxx_nsc->cxx_method( a, b ); return Py::Long( result ); } Py::Object mod_func_noargs() { std::cout << "mod_func_noargs Called." << std::endl; return Py::None(); } Py::Object mod_func_varargs( const Py::Tuple &args ) { std::cout << "mod_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } Py::Object mod_func_keyword( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "mod_func_varargs Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } if( args.length() > 0 ) { Py::Object x( args[0] ); try { Py::PythonClassObject x2( x ); std::cout << "C++ pointer " << x2.getCxxObject() << std::endl; } catch( Py::TypeError &e ) { // must clear the error e.clear(); std::cout << "arg 1 is not a new_style_class" << std::endl; } } return Py::None(); } Py::Object make_instance( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "make_instance Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } Py::Callable class_type( new_style_class::type() ); Py::PythonClassObject new_style_obj( class_type.apply( args, kwds ) ); return new_style_obj; } Py::Object factory_old_style_class( const Py::Tuple &/*args*/ ) { Py::Object obj = Py::asObject( new old_style_class ); return obj; } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif #if PY_MAJOR_VERSION == 3 static simple_module *simple; extern "C" EXPORT_SYMBOL PyObject *PyInit_simple() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif simple = new simple_module; return simple->module().ptr(); } // symbol required for the debug version extern "C" EXPORT_SYMBOL PyObject *PyInit_simple_d() { return PyInit_simple(); } #else static simple_module *simple; extern "C" EXPORT_SYMBOL void initsimple() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif simple = new simple_module; } // symbol required for the debug version extern "C" EXPORT_SYMBOL void initsimple_d() { initsimple(); } #endif pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/test_example.py000644 000765 000024 00000004257 11146616710 023653 0ustar00barrystaff000000 000000 #----------------------------------------------------------------------------- # # Copyright (c) 1998 - 2007, The Regents of the University of California # Produced at the Lawrence Livermore National Laboratory # All rights reserved. # # This file is part of PyCXX. For details,see http:#cxx.sourceforge.net/. The # full copyright notice is contained in the file COPYRIGHT located at the root # of the PyCXX distribution. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the disclaimer below. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the disclaimer (as noted below) in the # documentation and/or materials provided with the distribution. # - Neither the name of the UC/LLNL nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF # CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. # #----------------------------------------------------------------------------- import sys sys.path.insert( 0, 'pyds%d%d' % (sys.version_info[0], sys.version_info[1]) ) import example example.test() pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/example.cxx000644 000765 000024 00000050626 13662723705 022777 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details, see http://cxx.sourceforge.net. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include #include "range.hxx" // Extension object extern std::string test_extension_object(); #include static std::string test_String() { Py::String s("hello"); Py::Char blank = ' '; Py::String r1("world in brief", 5); s = s + blank + r1; s = s * 2; if(std::string(s) != "hello worldhello world") { return "failed (1) '" + std::string(s) + "'"; } // test conversion std::string w = static_cast(s); std::string w2 = (std::string) s; if(w != w2) { return "failed (2)"; } Py::String r2("12345 789"); Py::Char c6 = r2[5]; if(c6 != blank) { std::cout << "|" << c6 << "|" << std::endl; return "failed (3)"; } // ord tests Py::Char c3 = r2[2]; long v3 = c3.ord(); if( v3 != '3' ) { std::cout << "string ord value < 2^7 " << v3 << " vs. " << '3' << std::endl; return "failed (4)"; } std::cout << "sizeof( Py_UNICODE ) " << sizeof( Py_UNICODE ) << std::endl; // python2 only handles unicode < 2^16. Py_UNICODE u4( 0x20ac ); Py::Char c4( u4 ); long v4 = c4.ord(); if( v4 != 0x20ac ) { std::cout << "string ord value > 2^16 " << v4 << " vs. " << 0x20ac << std::endl; return "failed (5)"; } Py::Char c5( '\xd5' ); long v5 = c5.ord(); if( v5 != 0xd5 ) { std::cout << "string ord value < 2^8 " << v5 << " vs. " << 0xd5 << std::endl; return "failed (6)"; } // convert tests Py::Char c7 = r2.front(); Py::Char c8 = r2.back(); return "ok"; } static std::string test_boolean() { bool passed = true; Py::Object o; Py::Boolean pb1; Py::Boolean pb2; bool b1; o = Py::True(); if( o.isTrue() ) { std::cout << "OK: T1: True" << std::endl; } else { std::cout << "Bad: T1: False" << std::endl; passed = false; } pb1 = o; if( pb1 ) { std::cout << "OK: T2: True" << std::endl; } else { std::cout << "Bad: T2: False" << std::endl; passed = false; } b1 = pb1; if( b1 ) { std::cout << "OK: T3: True" << std::endl; } else { std::cout << "Bad: T3: False" << std::endl; passed = false; } pb2 = pb1; if( pb2 ) { std::cout << "OK: T4: True" << std::endl; } else { std::cout << "Bad: T4: False" << std::endl; passed = false; } pb2 = true; if( pb2 ) { std::cout << "OK: T5: True" << std::endl; } else { std::cout << "Bad: T5: False" << std::endl; passed = false; } o = Py::False(); if( o.isTrue() ) { std::cout << "Bad: F1: True" << std::endl; passed = false; } else { std::cout << "OK: F1: False" << std::endl; } pb1 = o; if( pb1 ) { std::cout << "Bad: F2: True" << std::endl; passed = false; } else { std::cout << "OK: F2: False" << std::endl; } b1 = pb1; if( b1 ) { std::cout << "Bad: F3: True" << std::endl; passed = false; } else { std::cout << "OK: F3: False" << std::endl; } pb2 = pb1; if( pb2 ) { std::cout << "Bad: F4: True" << std::endl; passed = false; } else { std::cout << "OK: F4: False" << std::endl; } pb2 = false; if( pb2 ) { std::cout << "Bad: F5: True" << std::endl; passed = false; } else { std::cout << "OK: F5: False" << std::endl; } if( passed ) return "ok"; else return "failed"; } static std::string test_numbers() { // test the basic numerical classes Py::Int i; Py::Int j(2); Py::Int k = Py::Int(3); if (! (j < k)) return "failed (1)"; if (! (j == j)) return "failed (2)" ; if (! (j != k)) return "failed (3)"; if (! (j <= k)) return "failed (4)"; if (! (k >= j)) return "failed (5)"; if (! (k > j)) return "failed (6)"; if (! (j <= j)) return "failed (7)"; if (! (j >= Py::Int(2))) return "failed (8)"; i = 2; Py::Float a; a = 3 + i; //5.0 Py::Float b(4.0); a = (1.0 + 2*a + (b*3.0)/2.0 + k)/Py::Float(5); // 4.0 i = a - 1.0; // 3 if(i != k) { return "failed 9"; } #ifdef HAVE_LONG_LONG long long cxx_long_long11 = 1152921504616856976ll; long long cxx_long_long12 = 6152921504616856976ll; Py::Long py_long11( cxx_long_long11 ); Py::Long py_long12( 100 ); if( !(cxx_long_long11 == py_long11.as_long_long() )) return "failed (100)"; if( !(1152921504616856976ll == py_long11.as_long_long() )) return "failed (101)"; if( !(100ll == py_long12.as_long_long() )) return "failed (101)"; py_long12 = cxx_long_long12; if( !(cxx_long_long12 == py_long12.as_long_long() )) return "failed (101)"; #endif return "ok"; } static std::string test_List_iterators (const Py::List& x, Py::List& y) { std::vector v; Py::Sequence::iterator j; int k = 0; for(Py::Sequence::const_iterator i = x.begin(); i != x.end(); ++i) { if ((*i).isList()) { ++k; } } if(k!=1) return "failed List iterators (1)"; k = 0; for(j = y.begin(); j != y.end(); ++j) { *j = Py::Int(k++); v.push_back (*j); } k = 0; for(j = y.begin(); j != y.end(); j++) { if(*j != Py::Int(k)) return "failed List iterators (2)"; if(v[k] != Py::Int(k)) return "failed List iterators (3)"; ++k; } Py::String o1("Howdy"); Py::Int o2(1); int caught_it = 0; try { std::cout << "About to raise exception int(\"Howdy\")" << std::endl; o2 = o1; } catch (Py::BaseException &e) { std::cout << "Catch o.k." << std::endl; caught_it = 1; e.clear(); } if(!caught_it) return "failed exception catch (4)."; return "ok"; } static Py::List test_List_references (Py::List& x) { Py::List y; for(Py::List::size_type i=0; i < x.length(); ++i) { if (x[i].isList()) { y = x[i]; } } return y; } static std::string test_List() { // test the Py::List class Py::List a; Py::List ans, aux; aux.append(Py::Int(3)); aux.append(Py::Float(6.0)); Py::Object b; Py::Int i(3); Py::Float x(6.0); Py::Float c(10.0), d(20.0); a.append(i); a.append(x); a.append(Py::Float(0.0)); b = a[0]; a[2] = b; a.append(c+d); a.append(aux); // a is now [3, 6.0, 3, 30.0, aux] ans.append(Py::Int(3)); ans.append(Py::Float(6.0)); ans.append(Py::Int(3)); ans.append(Py::Float(30.0)); ans.append(aux); Py::List::iterator l1, l2; for(l1= a.begin(), l2 = ans.begin(); l1 != a.end() && l2 != ans.end(); ++l1, ++l2) { if(*l1 != *l2) return "failed 1" + a.as_string(); } if (test_List_references (a)!= aux) { return "failed 2" + test_List_references(a).as_string(); } return test_List_iterators(ans, a); } static std::string test_Dict() { // test the Dict class Py::Dict a,b; Py::List v; Py::String s("two"); a["one"] = Py::Int(1); a[s] = Py::Int(2); a["three"] = Py::Int(3); if(Py::Int(a["one"]) != Py::Int(1)) return "failed 1a " + a.as_string(); if(Py::Int(a[s]) != Py::Int(2)) return "failed 1b " + a.as_string(); v = a.values(); #if 0 std::sort(v.begin(), v.end()); for(int k = 1; k < 4; ++k) { if(v[k-1] != Py::Int(k)) return "failed 2 " + v.as_string(); } #endif b = a; b.clear(); if(b.keys().length() != 0) { return "failed 3 " + b.as_string(); } const Py::Dict c; for (Py::Dict::const_iterator it = c.begin(); it != c.end(); ++it) { } return "ok"; } static std::string test_Tuple() { // test the Tuple class Py::Tuple a(3); Py::Tuple t; Py::Float f1(1.0), f2(2.0), f3(3.0); a[0] = f1; // should be ok since no other reference owned a[1] = f2; a[2] = f3; Py::Tuple b(a); int k = 0; for(Py::Tuple::iterator i = b.begin(); i != b.end(); ++i) { if(*i != Py::Float(++k)) return "failed 1 " + b.as_string(); } t = a; try { t[0] = Py::Int(1); // should fail, tuple has multiple references return "failed 2"; } catch (Py::BaseException& e) { e.clear(); } Py::TupleN t0; Py::TupleN t1( Py::Int( 1 ) ); Py::TupleN t2( Py::Int( 1 ), Py::Int( 2 ) ); Py::TupleN t3( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ) ); Py::TupleN t4( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ) ); Py::TupleN t5( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ), Py::Int( 5 ) ); Py::TupleN t6( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ), Py::Int( 5 ), Py::Int( 6 ) ); Py::TupleN t7( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ), Py::Int( 5 ), Py::Int( 6 ), Py::Int( 7 ) ); Py::TupleN t8( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ), Py::Int( 5 ), Py::Int( 6 ), Py::Int( 7 ), Py::Int( 8 ) ); Py::TupleN t9( Py::Int( 1 ), Py::Int( 2 ), Py::Int( 3 ), Py::Int( 4 ), Py::Int( 5 ), Py::Int( 6 ), Py::Int( 7 ), Py::Int( 8 ), Py::Int( 9 ) ); return "ok"; } static std::string test_STL() { int ans1; Py::List w; Py::List wans; wans.append(Py::Int(1)); wans.append(Py::Int(1)); wans.append(Py::Int(2)); wans.append(Py::Int(3)); wans.append(Py::Int(4)); wans.append(Py::Int(5)); w.append(Py::Int(5)); w.append(Py::Int(1)); w.append(Py::Int(4)); w.append(Py::Int(2)); w.append(Py::Int(3)); w.append(Py::Int(1)); ans1 = std::count(w.begin(), w.end(), Py::Float(1.0)); if (ans1 != 2) { return "failed count test"; } #if 0 std::sort(w.begin(), w.end()); if (w != wans) { return "failed sort test"; } #endif Py::Dict d; Py::String s1("blah"); Py::String s2("gorf"); d[ "one" ] = s1; d[ "two" ] = s1; d[ "three" ] = s2; d[ "four" ] = s2; Py::Dict::iterator it = d.begin(); for( ; it != d.end(); ++it ) { Py::Dict::value_type vt( *it ); Py::String rs = vt.second.repr(); std::string ls = rs.operator std::string(); std::cout << "dict value " << ls.c_str() << std::endl; } return "ok"; } void debug_check_ref_queue() { #ifdef Py_TRACE_REFS // create an element to find the queue Py::Int list_element; PyObject *p_slow = list_element.ptr(); PyObject *p_fast = p_slow; do { assert( p_slow->_ob_next->_ob_prev == p_slow ); assert( p_slow->_ob_prev->_ob_next == p_slow ); p_slow = p_slow->_ob_next; p_fast = p_slow->_ob_next->_ob_next; assert( p_slow != p_fast ); } while( p_slow != list_element.ptr() ); #endif } class example_module : public Py::ExtensionModule { public: example_module() : Py::ExtensionModule( "example" ) { range::init_type(); add_varargs_method("string", &example_module::ex_string, "string( s ) = return string"); add_varargs_method("sum", &example_module::ex_sum, "sum(arglist) = sum of arguments"); add_varargs_method("test", &example_module::ex_test, "test(arglist) runs a test suite"); add_varargs_method("range", &example_module::new_r, "range(start,stop,stride)"); add_keyword_method("kw", &example_module::ex_keyword, "kw()"); initialize( "documentation for the example module" ); Py::Dict d( moduleDictionary() ); Py::Object b(Py::asObject(new range(1,10,2))); d["a_constant"] = b.getAttr("c"); } virtual ~example_module() {} private: Py::Object ex_keyword( const Py::Tuple &args, const Py::Dict &kws ) { std::cout << "Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kws.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::Int(0); } Py::Object new_r (const Py::Tuple &rargs) { if (rargs.length() < 2 || rargs.length() > 3) { throw Py::RuntimeError("Incorrect # of args to range(start,stop [,step])."); } Py::Int start(rargs[0]); Py::Int stop(rargs[1]); Py::Int step(1); if (rargs.length() == 3) { step = rargs[2]; } if (long(start) > long(stop) + 1 || long(step) == 0) { throw Py::RuntimeError("Bad arguments to range(start,stop [,step])."); } return Py::asObject(new range(start, stop, step)); } Py::Object ex_string (const Py::Tuple &a) { std::cout << "ex_std::string: s1 is first arg" << std::endl; Py::String s1( a[0] ); std::cout << "ex_string: s1.isString() " << s1.isString() << std::endl; std::cout << "ex_string: s1.isUnicode() " << s1.isUnicode() << std::endl; std::cout << "ex_string: s1.size() " << s1.size() << std::endl; if( s1.isUnicode() ) { std::cout << "ex_string: s2 is s1.encode( utf-8 )" << std::endl; Py::String s2( s1.encode( "utf-8" ) ); std::cout << "ex_string: s2.isString() " << s2.isString() << std::endl; std::cout << "ex_string: s2.isUnicode() " << s2.isUnicode() << std::endl; std::cout << "ex_string: s2.size() " << s2.size() << std::endl; return s2; } else { std::cout << "ex_string: s2 is s1.decode( utf-8 )" << std::endl; Py::String s2( s1.decode( "utf-8" ) ); std::cout << "ex_string: s2.isString() " << s2.isString() << std::endl; std::cout << "ex_string: s2.isUnicode() " << s2.isUnicode() << std::endl; std::cout << "ex_string: s2.size() " << s2.size() << std::endl; return s2; } } Py::Object ex_sum (const Py::Tuple &a) { // this is just to test the function verify_length: try { a.verify_length(0); std::cout << "I see that you refuse to give me any work to do." << std::endl; } catch (Py::BaseException& e) { e.clear(); std::cout << "I will now add up your elements, oh great one." << std::endl; } Py::Float f(0.0); for( Py::Sequence::size_type i = 0; i < a.length(); i++ ) { Py::Float g (a[i]); f = f + g; } return f; } Py::Object ex_test( const Py::Tuple &a) { debug_check_ref_queue(); std::cout << "Example Test starting" << std::endl; try { // cannot create from NULL Py::Object obj( NULL ); std::cout << "FAILED Py::Object( NULL )" << std::endl; } catch (Py::TypeError& e) { std::cout << "Correctly caught " << Py::type(e) << std::endl; std::cout << " Py::BaseException value: " << Py::value(e) << std::endl; std::cout << " Py::BaseException traceback: " << Py::trace(e) << std::endl; e.clear(); } try { PyObject *p = NULL; std::cout << "Trying to convert a NULL to an Py::Int" << std::endl; Py::Int k( p ); std::cout << "Failed to raise error" << std::endl; } catch (Py::TypeError& e) { std::cout << "Correctly caught " << Py::type(e) << std::endl; std::cout << " Py::BaseException value: " << Py::value(e) << std::endl; std::cout << " Py::BaseException traceback: " << Py::trace(e) << std::endl; e.clear(); } try { Py::String s("this should fail"); PyObject *p = s.ptr(); std::cout << "Trying to convert a Py::String to an Py::Int" << std::endl; Py::Int k( p ); std::cout << "Failed to raise error" << std::endl; } catch (Py::TypeError& e) { std::cout << "Correctly caught " << Py::type(e) << std::endl; std::cout << " Py::BaseException value: " << Py::value(e) << std::endl; std::cout << " Py::BaseException traceback: " << Py::trace(e) << std::endl; e.clear(); } debug_check_ref_queue(); std::string result = test_boolean(); std::cout << "Py::Boolean: " << result << std::endl; debug_check_ref_queue(); std::cout << "Numbers: " << test_numbers() << std::endl; debug_check_ref_queue(); std::cout << "Py::String: " << test_String() << std::endl; debug_check_ref_queue(); std::cout << "Py::List: " << test_List() << std::endl; debug_check_ref_queue(); std::cout << "Py::Dict: " << test_Dict() << std::endl; debug_check_ref_queue(); std::cout << "Py::Tuple: " << test_Tuple() << std::endl; debug_check_ref_queue(); std::cout << "STL test: " << test_STL() << std::endl; debug_check_ref_queue(); std::cout << "Extension object test: " << test_extension_object() << std::endl; debug_check_ref_queue(); Py::List b(a); Py::Tuple c(b); if( c != a) { std::cout << "Py::Tuple/list conversion failed.\n"; } Py::Module m("sys"); Py::Object s = m.getAttr("stdout"); Py::Object nun; nun = PyObject_CallMethod(s.ptr(), "write", "s", "Module test ok.\n"); return Py::None(); } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif extern "C" EXPORT_SYMBOL void initexample() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif static example_module* example = new example_module; } // symbol required for the debug version extern "C" EXPORT_SYMBOL void initexample_d() { initexample(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python2/range.cxx000644 000765 000024 00000007761 13662723705 022442 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "range.hxx" // Connect range objects to Python Py::Object range::repr() { return Py::String(asString()); } Py_ssize_t range::sequence_length() { return length(); } Py::Object range::sequence_item( Py_ssize_t i ) { return Py::Int( item( static_cast( i ) ) ); } Py::Object range::sequence_concat( const Py::Object &j ) { Py::Int k(j); return Py::asObject(extend(int(k))); } Py::Object range::sequence_slice( Py_ssize_t i, Py_ssize_t j ) { return Py::asObject( slice( static_cast( i ), static_cast( j ) ) ); } Py::Object range::getattr( const char *name ) { if(std::string(name) == "c") return Py::Float(300.0); if(std::string(name) == "start") return Py::Int(start); return getattr_methods( name ); } // "regular" methods... Py::Object range::amethod( const Py::Tuple &t ) { t.verify_length(1); Py::List result; result.append(Py::Object(this)); result.append(t[0]); return result; } Py::Object range::value( const Py::Tuple &t ) { return c_value(t); } Py::Object range::assign( const Py::Tuple &t ) { t.verify_length(2); Py::Tuple t1(t[0]); // subscripts Py::Object o2(t[1]); // rhs; c_assign (t1, o2); return Py::Nothing(); } void range::init_type() { behaviors().name("range"); behaviors().doc("range objects: start, stop, step"); behaviors().supportRepr(); behaviors().supportGetattr(); behaviors().supportSequenceType(); add_varargs_method("amethod", &range::amethod, "demonstrate how to document amethod"); add_varargs_method("assign", &range::assign); add_varargs_method("value", &range::value); add_varargs_method("reference_count", &range::reference_count); behaviors().readyType(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/python.cxx000644 000765 000024 00000004776 11146616710 022663 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- /* Minimal main program -- everything is loaded from the library */ #include "CXX/WrapPython.h" #include extern "C" int Py_Main(int argc, char** argv); extern "C" void initexample(); extern "C" void Py_Initialize(); int main(int argc, char** argv) { std::cout << "Greetings. Type from example import *; test()" << std::endl; Py_Initialize(); initexample(); return Py_Main(argc, argv); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/rangetest.cxx000644 000765 000024 00000010400 13776607630 023327 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning( disable: 4786 ) #endif #include "CXX/Extensions.hxx" #include "range.hxx" #include "test_assert.hxx" // This test also illustrates using the Py namespace explicitly void test_extension_object() { Py::List a; // just something that is not a range... Py::ExtensionObject r1( new range( 1, 20, 3 ) ); test_assert( "extension object check() incompatible", false, range::check( a ) ); test_assert( "extension object check() incompatible", true, range::check( r1 ) ); RangeSequence r2( 1, 10, 2 ); test_assert( "extension object index", r2[ 1 ], Py::Long( 3 ) ); // calling an extension object method using getattr Py::Callable w( r2.getAttr( "amethod" ) ); { Py::Tuple args( 1 ); Py::Long j( 3 ); args[0] = j; Py::List answer( w.apply( args ) ); test_assert( "extension object amethod 1 q1", answer[0], r2 ); test_assert( "extension object amethod 1 q2", answer[1], args[0] ); } { // calling an extension object method using callMemberFunction Py::Tuple args( 1 ); Py::Long j( 3 ); args[0] = j; Py::List answer( r2.callMemberFunction( "amethod", args ) ); test_assert( "extension object amethod 2 q1", answer[0], r2 ); test_assert( "extension object amethod 2 q2", answer[1], args[0] ); } Py::Tuple nv( 3 ); nv[0] = Py::Long( 1 ); nv[1] = Py::Long( 20 ); nv[2] = Py::Long( 3 ); Py::Tuple unused; Py::List r2value; r2.assign( unused, nv ); r2value = r2.value( unused ); test_assert( "extension object q3", r2value[1], Py::Long( 4 ) ); // repeat using getattr w = r2.getAttr( "assign" ); Py::Tuple the_arguments( 2 ); the_arguments[0] = unused; the_arguments[1] = nv; w.apply( the_arguments ); { Py::ExtensionObject rheap( new range( 1, 10, 2 ) ); // delete rheap } w = r2.getAttr( "value" ); Py::Tuple one_arg( 1 ); one_arg[0] = unused; r2value = w.apply( one_arg ); test_assert( "extension object q4", r2value[1], Py::Long( 4 ) ); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/range.hxx000644 000765 000024 00000010514 13662723705 022436 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifndef __r__h #define __r__h #include "CXX/Extensions.hxx" #include STR_STREAM // Making an extension object class range: public Py::PythonExtension { public: range( long start, long stop, long step = 1L ); virtual ~range(); static void init_type(void); Py_ssize_t length() const; int item( long i ) const; range *slice( Py_ssize_t i, Py_ssize_t j ) const; range *extend( Py_ssize_t k ) const; std::string asString() const; // override functions from PythonExtension virtual Py::Object repr(); virtual Py::Object getattr( const char *name ); virtual Py_ssize_t sequence_length(); virtual Py::Object sequence_item( Py_ssize_t i ); virtual Py::Object sequence_concat( const Py::Object &j ); virtual Py::Object sequence_slice( Py_ssize_t i, Py_ssize_t j ); // define python methods of this object Py::Object amethod( const Py::Tuple &args ); Py::Object value( const Py::Tuple &args ); Py::Object assign( const Py::Tuple &args ); Py::Object reference_count( const Py::Tuple &args ); Py::Object c_value( const Py::Tuple & ) const; void c_assign( const Py::Tuple &, const Py::Object &rhs ); private: long m_start; long m_stop; long m_step; }; class RangeSequence: public Py::SeqBase { public: explicit RangeSequence (PyObject *pyob, bool owned = false): Py::SeqBase(pyob, owned) { validate(); } explicit RangeSequence(long start, long stop, long step = 1) { set (new range(start, stop, step), true); } RangeSequence(const RangeSequence& other): Py::SeqBase(*other) { validate(); } RangeSequence& operator= (const Py::Object& rhs) { return (*this = *rhs); } RangeSequence& operator= (PyObject* rhsp) { if(ptr() == rhsp) return *this; set(rhsp); return *this; } virtual bool accepts(PyObject *pyob) const { return pyob && range::check(pyob); } Py::Object value(const Py::Tuple& t) const { return static_cast(ptr())->c_value(t); } void assign(const Py::Tuple& t, const Py::Object& rhs) { static_cast(ptr())->c_assign(t, rhs); } }; #endif pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/simple2.cxx000644 000765 000024 00000021171 13662723705 022711 0ustar00barrystaff000000 000000 // // Copyright (c) 2008 Barry A. Scott // // // simple2_moduile.cxx // // This module defines a single function. // #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include #include template class EnumString { public: EnumString(); ~EnumString() {} const std::string &toTypeName( T ) { return m_type_name; } const std::string &toString( T value ) { static std::string not_found( "-unknown-" ); EXPLICIT_TYPENAME std::map::iterator it = m_enum_to_string.find( value ); if( it != m_enum_to_string.end() ) return (*it).second; not_found = "-unknown ("; int u1000 = value/1000 % 10; int u100 = value/100 % 10; int u10 = value/10 % 10; int u1 = value % 10; not_found += char( '0' + u1000 ); not_found += char( '0' + u100 ); not_found += char( '0' + u10 ); not_found += char( '0' + u1 ); not_found += ")-"; return not_found; } bool toEnum( const std::string &string, T &value ) { EXPLICIT_TYPENAME std::map::iterator it = m_string_to_enum.find( string ); if( it != m_string_to_enum.end() ) { value = (*it).second; return true; } return false; } EXPLICIT_TYPENAME std::map::iterator begin() { return m_string_to_enum.begin(); } EXPLICIT_TYPENAME std::map::iterator end() { return m_string_to_enum.end(); } private: void add( T value, std::string string ) { m_string_to_enum[string] = value; m_enum_to_string[value] = string; } std::string m_type_name; std::map m_string_to_enum; std::map m_enum_to_string; }; template class pysvn_enum_value : public Py::PythonExtension< EXPLICIT_CLASS pysvn_enum_value > { public: pysvn_enum_value( T _value) : Py::PythonExtension() , m_value( _value ) { } virtual ~pysvn_enum_value() { } virtual int compare( const Py::Object &other ) { if( pysvn_enum_value::check( other ) ) { pysvn_enum_value *other_value = static_cast( other.ptr() ); if( m_value == other_value->m_value ) return 0; if( m_value > other_value->m_value ) return 1; else return -1; } else { std::string msg( "expecting " ); msg += toTypeName( m_value ); msg += " object for compare "; throw Py::AttributeError( msg ); } } virtual Py::Object repr() { std::string s("<"); s += toTypeName( m_value ); s += "."; s += toString( m_value ); s += ">"; return Py::String( s ); } virtual Py::Object str() { return Py::String( toString( m_value ) ); } // need a hash so that the enums can go into a map virtual long hash() { static Py::String type_name( toTypeName( m_value ) ); // use the m_value plus the hash of the type name return long( m_value ) + type_name.hashValue(); } static void init_type(void); public: T m_value; }; //------------------------------------------------------------ template class pysvn_enum : public Py::PythonExtension< EXPLICIT_CLASS pysvn_enum > { public: pysvn_enum() : Py::PythonExtension() { } virtual ~pysvn_enum() { } virtual Py::Object getattr( const char *_name ) { std::string name( _name ); T value; if( name == "__methods__" ) { return Py::List(); } if( name == "__members__" ) { return memberList( static_cast( 0 ) ); } if( toEnum( name, value ) ) { return Py::asObject( new pysvn_enum_value( value ) ); } return this->getattr_methods( _name ); } static void init_type(void); }; template const std::string &toTypeName( T value ) { static EnumString< T > enum_map; return enum_map.toTypeName( value ); } template const std::string &toString( T value ) { static EnumString< T > enum_map; return enum_map.toString( value ); } template bool toEnum( const std::string &string, T &value ) { static EnumString< T > enum_map; return enum_map.toEnum( string, value ); } template Py::List memberList( T value ) { static EnumString< T > enum_map; Py::List members; EXPLICIT_TYPENAME std::map::iterator it = enum_map.begin(); while( it != enum_map.end() ) { members.append( Py::String( (*it).first ) ); ++it; } return members; } typedef enum { xxx_first = 1, xxx_second, xxx_third } xxx_t; template <> EnumString< xxx_t >::EnumString() : m_type_name( "xxx" ) { add( xxx_first, "first" ); add( xxx_second, "second" ); add( xxx_third, "third" ); } template <> void pysvn_enum< xxx_t >::init_type(void) { behaviors().name("xxx"); behaviors().doc("xxx enumeration"); behaviors().supportGetattr(); } template <> void pysvn_enum_value< xxx_t >::init_type(void) { behaviors().name("xxx"); behaviors().doc("xxx value"); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } class cls: public Py::PythonExtension< cls > { public: cls() { } virtual ~cls() { } static void init_type(void) { behaviors().name( "cls" ); behaviors().doc( "documentation for cls class" ); behaviors().supportGetattr(); add_noargs_method( "cls_func_noargs", &cls::cls_func_noargs ); add_varargs_method( "cls_func_varargs", &cls::cls_func_varargs ); add_keyword_method( "cls_func_keyword", &cls::cls_func_keyword ); } // override functions from PythonExtension virtual Py::Object getattr( const char *name ) { return getattr_methods( name ); } Py::Object cls_func_noargs( void ) { std::cout << "cls_func_noargs Called." << std::endl; return Py::None(); } Py::Object cls_func_varargs( const Py::Tuple &args ) { std::cout << "cls_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } Py::Object cls_func_keyword( const Py::Tuple &args, const Py::Dict &kws ) { std::cout << "cls_func_keyword Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kws.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::None(); } }; class simple2_module : public Py::ExtensionModule { public: simple2_module() : Py::ExtensionModule( "simple2" ) // this must be name of the file on disk e.g. simple2.so or simple2.pyd { cls::init_type(); pysvn_enum< xxx_t >::init_type(); pysvn_enum_value< xxx_t >::init_type(); add_varargs_method("cls", &simple2_module::factory_cls, "documentation for cls()"); add_keyword_method("func", &simple2_module::func, "documentation for func()"); // after initialize the moduleDictionary with exist initialize( "documentation for the simple2 module" ); Py::Dict d( moduleDictionary() ); d["xxx"] = Py::asObject( new pysvn_enum< xxx_t >() ); d["var"] = Py::String( "var value" ); } virtual ~simple2_module() {} private: Py::Object func( const Py::Tuple &args, const Py::Dict &kws ) { return Py::None(); } Py::Object factory_cls( const Py::Tuple &rargs ) { return Py::asObject( new cls ); } }; extern "C" PyObject *PyInit_simple2() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif static simple2_module* simple2 = new simple2_module; return simple2->module().ptr(); } // symbol required for the debug version extern "C" PyObject *PyInit_simple2_d() { return PyInit_simple2(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/test_assert.hxx000644 000765 000024 00000006017 13662723705 023705 0ustar00barrystaff000000 000000 // // Copyright (c) 2008-2009 Barry A. Scott // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // // test_assert.hxx // class TestError { public: TestError( const std::string &description ) : m_description( description ) {} ~TestError() {} std::string m_description; }; template static void test_assert_scaler( const char *description, const char *type, T benchmark, T value ) { std::ostringstream full_description; full_description << description << ": " << type << " benchmark=" << benchmark << " " << type << " value=" << value; if( benchmark != value ) { throw TestError( full_description.str() ); } else { std::cout << "PASSED: " << full_description.str() << std::endl; } } static void test_assert( const char *description, bool benchmark, bool value ) { test_assert_scaler( description, "bool", benchmark, value ); } static void test_assert( const char *description, int benchmark, int value ) { test_assert_scaler( description, "int", benchmark, value ); } #ifdef HAVE_LONG_LONG static void test_assert( const char *description, long long benchmark, long long value ) { test_assert_scaler( description, "long long", benchmark, value ); } #endif static void test_assert( const char *description, double benchmark, double value ) { test_assert_scaler( description, "double", benchmark, value ); } #if SIZEOF_INT != SIZEOF_SIZE_T && SIZEOF_LONG_LONG != SIZEOF_SIZE_T static void test_assert( const char *description, Py_ssize_t benchmark, Py_ssize_t value ) { test_assert_scaler( description, "Py_ssize_t", benchmark, value ); } #endif #if SIZEOF_INT != SIZEOF_SIZE_T static void test_assert( const char *description, int benchmark, Py_ssize_t value ) { test_assert_scaler( description, "Py_ssize_t", Py_ssize_t( benchmark ), value ); } #endif static void test_assert( const char *description, const std::string &benchmark, const std::string &value ) { test_assert_scaler( description, "std::string", benchmark, value ); } static void test_assert( const char *description, const Py::Object &benchmark, const Py::Object &value ) { test_assert_scaler( description, "Py::Object", benchmark, value ); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/pycxx_iter.hxx000644 000765 000024 00000003605 13662723705 023543 0ustar00barrystaff000000 000000 #include "CXX/Extensions.hxx" #include #include #include class IterT : public Py::PythonExtension { int from, count, last; int fwd_iter; bool do_it_reversed; public: static void init_type(void); // announce properties and methods IterT(int _from, int _last) : from(_from) , last(_last) , fwd_iter(0) , do_it_reversed(false) {} Py::Object repr() { std::string s; std::ostringstream s_out; s_out << "IterT count(" << count << ")"; return Py::String(s_out.str()); } Py::Object reversed(const Py::Tuple&) { do_it_reversed= true; // indicate backward iteration return Py::Object(this,false); // increment the refcount } Py::Object iter() { if( do_it_reversed ) { fwd_iter = -1; do_it_reversed=false; } else fwd_iter = 1; // indicate forward iteration return Py::Object(this,false); // increment the refcount } PyObject* iternext() { int ct; if( ! fwd_iter ) return NULL; // signal StopIteration if( fwd_iter > 0 ) { if( fwd_iter == 1 ) { ct = from; count = from+1; fwd_iter=2; } else if( count <= last ) ct= count++; else return NULL; // signal StopIteration } else if( fwd_iter == -1 ) { ct = last; count = last-1; fwd_iter=-2; } else if( count >= from ) ct= count--; else return NULL; // signal StopIteration Py::Long Result(ct); Result.increment_reference_count(); return Result.ptr(); } }; pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/pickle_test.py000644 000765 000024 00000001064 13474531342 023464 0ustar00barrystaff000000 000000 import simple import copyreg import pickle import pprint class can_be_pickled(simple.new_style_class): def __init__( self, value ): super().__init__() self.value = value def __reduce__( self ): return (simple.new_style_class, (self.value,)) #n = can_be_pickled( 'QQQZZZQQQ' ) n = simple.new_style_class( 'QQQZZZQQQ' ) print( 'n.value:', n.value ) print( 'pickle.dumps' ) s = pickle.dumps( n ) print( 'dumps:', repr(s) ) print( 'pickle.loads' ) n2 = pickle.loads( s ) print( 'loads:', repr(n2) ) print( 'n2.value:', n2.value ) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/test_simple.py000644 000765 000024 00000010400 13305260623 023472 0ustar00barrystaff000000 000000 import sys def message( msg ): sys.stdout.write( msg ) sys.stdout.write( '\n' ) sys.stdout.flush() message( 'Info: ---- %s ----' % (sys.argv[0],) ) message( 'TEST: import simple' ) import simple message( 'TEST: call module functions' ) simple.func() simple.func( 4, 5 ) simple.func( 4, 5, name=6, value=7 ) def callback_good( arg ): message( 'callback_good with %r' % (arg,) ) return 'good result' message( 'TEST: raise user defined exception' ) try: raise simple.SimpleError( 'Testing simple error' ) except simple.SimpleError as e: message( 'PASS SimpleError %s' % (e,) ) def callback_bad( arg ): message( 'callback_bad with %r' % (arg,) ) raise ValueError( 'callback_bad error' ) def callback_raise_simple_error( arg ): message( 'callback_bad with %r' % (arg,) ) raise simple.SimpleError( 'callback_raise_simple_error' ) message( 'TEST: call C++ with Python callback_good' ) answer = simple.func_with_callback( callback_good, 'fred' ) message( 'PASS callback_good returned %r' % (answer,) ) message( 'TEST: call C++ with Python callback_bad' ) try: answer = simple.func_with_callback( callback_bad, 'fred' ) message( 'FAILED callback_bad %r' % (answer,) ) except Exception as e: message( 'PASS callback_bad: error %s' % (e,) ) message( 'TEST: call C++ with Python callback_raise_simple_error' ) try: answer = simple.func_with_callback( callback_raise_simple_error, 'fred' ) message( 'FAIL callback_raise_simple_error returned %r' % (answer,) ) except simple.SimpleError as e: message( 'PASS callback_raise_simple_error: %s' % (e,) ) message( 'TEST: call C++ that will catch SimpleError' ) try: answer = simple.func_with_callback_catch_simple_error( callback_raise_simple_error, 'fred' ) message( 'PASS func_with_callback_catch_simple_error returned %r' % (answer,) ) except simple.SimpleError as e: message( 'FAIL func_with_callback_catch_simple_error: %s' % (e,) ) message( 'TEST: raise SimpleError' ) try: raise simple.SimpleError( 'Hello!' ) except simple.SimpleError as e: message( 'PASS caught SimpleError - %s' % (e,) ) message( 'TEST: call old style class functions' ) old_style_class = simple.old_style_class() old_style_class.old_style_class_func_noargs() old_style_class.old_style_class_func_varargs() old_style_class.old_style_class_func_varargs( 4 ) old_style_class.old_style_class_func_keyword() old_style_class.old_style_class_func_keyword( name=6, value=7 ) old_style_class.old_style_class_func_keyword( 4, 5 ) old_style_class.old_style_class_func_keyword( 4, 5, name=6, value=7 ) message( 'TEST: Derived class functions' ) class Derived(simple.new_style_class): def __init__( self ): simple.new_style_class.__init__( self ) def derived_func( self, arg ): message( 'derived_func' ) super().func_noargs() def derived_func_bad( self, arg ): message( 'derived_func_bad' ) raise ValueError( 'derived_func_bad value error' ) def func_noargs( self ): message( 'derived func_noargs' ) d = Derived() message( repr(dir( d )) ) d.derived_func( "arg" ) d.func_noargs() d.func_varargs() d.func_varargs( 4 ) d.func_keyword() d.func_keyword( name=6, value=7 ) d.func_keyword( 4, 5 ) d.func_keyword( 4, 5, name=6, value=7 ) message( d.value ) d.value = "a string" message( d.value ) d.new_var = 99 d.func_varargs_call_member( "derived_func" ) result = d.func_varargs_call_member( "derived_func_bad" ) message( 'derived_func_bad caught error: %r' % (result,) ) message( 'TEST: pass derived class to C++ world' ) result = simple.derived_class_test( d, 5, 9 ) message( 'derived_class_test result %r' % (result,) ) message( 'TEST: new_style_class functions' ) new_style_class = simple.new_style_class() message( repr(dir( new_style_class )) ) new_style_class.func_noargs() new_style_class.func_varargs() new_style_class.func_varargs( 4 ) new_style_class.func_keyword() new_style_class.func_keyword( name=6, value=7 ) new_style_class.func_keyword( 4, 5 ) new_style_class.func_keyword( 4, 5, name=6, value=7 ) try: new_style_class.func_noargs_raise_exception() message( 'Error: did not raised RuntimeError' ) sys.exit( 1 ) except RuntimeError as e: message( 'Raised %r' % (str(e),) ) message( 'TEST: dereference new style class' ) new_style_class = None pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/pycxx_iter.cxx000644 000765 000024 00000002765 13305260623 023531 0ustar00barrystaff000000 000000 #include "pycxx_iter.hxx" #include "CXX/Objects.hxx" void IterT::init_type() { behaviors().name( "pycxx_iter.IterT" ); behaviors().doc( "IterT( ini_count )" ); // you must have overwritten the virtual functions // Py::Object iter() and Py::Object iternext() behaviors().supportIter(); // set entries in the Type Table behaviors().supportRepr(); add_varargs_method( "reversed", &IterT::reversed, "reversed()" ); behaviors().readyType(); } class MyIterModule : public Py::ExtensionModule { public: MyIterModule() : Py::ExtensionModule( "pycxx_iter" ) { IterT::init_type(); add_varargs_method( "IterT", &MyIterModule::new_IterT, "IterT(from,last)" ); initialize( "MyIterModule documentation" ); // register with Python } virtual ~MyIterModule() {} private: Py::Object new_IterT( const Py::Tuple &args ) { if( args.length() != 2 ) { throw Py::RuntimeError( "Incorrect # of args to IterT(from,to)." ); } return Py::asObject( new IterT( Py::Long( args[0] ).as_long(), Py::Long( args[1] ).as_long() ) ); } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif extern "C" EXPORT_SYMBOL PyObject *PyInit_pycxx_iter() { // the following constructor call registers our extension module // with the Python runtime system static MyIterModule *iter = new MyIterModule; return iter->module().ptr(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/test_pycxx_iter.py000644 000765 000024 00000000616 13305260623 024407 0ustar00barrystaff000000 000000 import sys def message( msg ): sys.stdout.write( msg ) sys.stdout.write( '\n' ) sys.stdout.flush() message( 'Info: ---- %s ----' % (sys.argv[0],) ) sys.path.insert( 0, 'pyds%d%d' % (sys.version_info[0], sys.version_info[1]) ) import pycxx_iter it = pycxx_iter.IterT( 5, 7 ) for i in it: message( '%r %r' % (i, it) ) message( 'refcount of it: %d' % (sys.getrefcount( it ),) ) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/setup.py000644 000765 000024 00000006413 13074106026 022312 0ustar00barrystaff000000 000000 #----------------------------------------------------------------------------- # # Copyright (c) 1998 - 2007, The Regents of the University of California # Produced at the Lawrence Livermore National Laboratory # All rights reserved. # # This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The # full copyright notice is contained in the file COPYRIGHT located at the root # of the PyCXX distribution. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the disclaimer below. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the disclaimer (as noted below) in the # documentation and/or materials provided with the distribution. # - Neither the name of the UC/LLNL nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF # CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. # #----------------------------------------------------------------------------- import os, sys from distutils.core import setup, Extension support_dir = os.path.normpath( os.path.join( sys.prefix, 'share', 'python%d.%d' % (sys.version_info[0],sys.version_info[1]), 'CXX' ) ) if os.name == 'posix': CXX_libraries = ['stdc++','m'] else: CXX_libraries = [] setup( name = "CXXDemo", version = "7.0", maintainer = "Barry Scott", maintainer_email = "barry-scott@users.sourceforge.net", description = "Demo of facility for extending Python with C++", url = "http://cxx.sourceforge.net", packages = ['CXX'], package_dir = {'CXX': '.'}, ext_modules = [ Extension( 'CXX.example', sources = ['example.cxx', 'range.cxx', 'rangetest.cxx', os.path.join(support_dir,'cxxsupport.cxx'), os.path.join(support_dir,'cxx_extensions.cxx'), os.path.join(support_dir,'cxx_exceptions.cxx'), os.path.join(support_dir,'IndirectPythonInterface.cxx'), os.path.join(support_dir,'cxxextensions.c') ] )] ) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/example.def000644 000765 000024 00000000026 11146616710 022711 0ustar00barrystaff000000 000000 EXPORTS initexample pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/simple.cxx000644 000765 000024 00000034275 14202152524 022622 0ustar00barrystaff000000 000000 // // Copyright (c) 2008-2010 Barry A. Scott // // // simple_moduile.cxx // // This module defines a single function. // #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include #include class new_style_class: public Py::PythonClass< new_style_class > { public: new_style_class( Py::PythonClassInstance *self, Py::Tuple &args, Py::Dict &kwds ) : Py::PythonClass< new_style_class >::PythonClass( self, args, kwds ) , m_value( "default value" ) { std::cout << "new_style_class c'tor Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } if( args.length() >= 1 ) { m_value = args[0]; } } virtual ~new_style_class() { std::cout << "~new_style_class." << std::endl; } int cxx_method( int a, int b ) { return a * b + 3; } static void init_type(void) { behaviors().name( "simple.new_style_class" ); behaviors().doc( "documentation for new_style_class class" ); behaviors().supportGetattro(); behaviors().supportSetattro(); behaviors().supportNumberType( Py::PythonType::support_number_add, Py::PythonType::support_number_inplace_add ); PYCXX_ADD_NOARGS_METHOD( func_noargs, new_style_class_func_noargs, "docs for func_noargs" ); PYCXX_ADD_VARARGS_METHOD( func_varargs, new_style_class_func_varargs, "docs for func_varargs" ); PYCXX_ADD_KEYWORDS_METHOD( func_keyword, new_style_class_func_keyword, "docs for func_keyword" ); PYCXX_ADD_NOARGS_METHOD( func_noargs_raise_exception, new_style_class_func_noargs_raise_exception, "docs for func_noargs_raise_exception" ); PYCXX_ADD_VARARGS_METHOD( func_varargs_call_member, new_style_class_call_member, "docs for func_varargs_call_member" ); PYCXX_ADD_NOARGS_METHOD( __reduce__, reduce_func, "__reduce__ function" ); // Call to make the type ready for use behaviors().readyType(); } Py::Object number_add( const Py::Object &other ) { std::cout << "new_style_class.number_add called" << std::endl; Py::Long num_to_add( other ); return Py::Long( 5 + num_to_add ); } Py::Object number_inplace_add( const Py::Object &other ) { std::cout << "new_style_class.number_inplace_add called..." << std::endl; Py::Long num_to_add( other ); std::cout << "... with " << num_to_add << std::endl; return self(); } Py::Object reduce_func( void ) { Py::TupleN ctor_args( m_value ); Py::TupleN result( new_style_class::type(), ctor_args ); return result; } PYCXX_NOARGS_METHOD_DECL( new_style_class, reduce_func ) Py::Object new_style_class_func_noargs( void ) { std::cout << "new_style_class_func_noargs Called." << std::endl; std::cout << "value ref count " << m_value.reference_count() << std::endl; return Py::None(); } PYCXX_NOARGS_METHOD_DECL( new_style_class, new_style_class_func_noargs ) Py::Object new_style_class_func_varargs( const Py::Tuple &args ) { std::cout << "new_style_class_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } PYCXX_VARARGS_METHOD_DECL( new_style_class, new_style_class_func_varargs ) Py::Object new_style_class_call_member( const Py::Tuple &args ) { std::cout << "new_style_class_call_member Called with " << args.length() << " normal arguments." << std::endl; Py::String member_func_name( args[0] ); #ifdef PYCXX_DEBUG bpt(); #endif Py::Object _self = self(); try { Py::Object result( _self.callMemberFunction( member_func_name.as_std_string(), args ) ); return result; } catch( Py::BaseException &e ) { e.clear(); return Py::String( "new_style_class_call_member error when calling member" ); } } PYCXX_VARARGS_METHOD_DECL( new_style_class, new_style_class_call_member ) Py::Object new_style_class_func_keyword( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "new_style_class_func_keyword Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::None(); } PYCXX_KEYWORDS_METHOD_DECL( new_style_class, new_style_class_func_keyword ) Py::Object new_style_class_func_noargs_raise_exception( void ) { std::cout << "new_style_class_func_noargs_raise_exception Called." << std::endl; throw Py::RuntimeError( "its an error" ); } PYCXX_NOARGS_METHOD_DECL( new_style_class, new_style_class_func_noargs_raise_exception ) Py::Object getattro( const Py::String &name_ ) { std::string name( name_.as_std_string( "utf-8" ) ); if( name == "value" ) { return m_value; } else { return genericGetAttro( name_ ); } } int setattro( const Py::String &name_, const Py::Object &value ) { std::string name( name_.as_std_string( "utf-8" ) ); if( name == "value" ) { m_value = value; return 0; } else { return genericSetAttro( name_, value ); } } Py::String m_value; }; class old_style_class: public Py::PythonExtension< old_style_class > { public: old_style_class() { } virtual ~old_style_class() { } static void init_type(void) { behaviors().name( "simple.old_style_class" ); behaviors().doc( "documentation for old_style_class class" ); behaviors().supportGetattr(); add_noargs_method( "old_style_class_func_noargs", &old_style_class::old_style_class_func_noargs ); add_varargs_method( "old_style_class_func_varargs", &old_style_class::old_style_class_func_varargs ); add_keyword_method( "old_style_class_func_keyword", &old_style_class::old_style_class_func_keyword ); behaviors().readyType(); } // override functions from PythonExtension virtual Py::Object getattr( const char *name ) { return getattr_methods( name ); } Py::Object old_style_class_func_noargs( void ) { std::cout << "old_style_class_func_noargs Called." << std::endl; return Py::None(); } Py::Object old_style_class_func_varargs( const Py::Tuple &args ) { std::cout << "old_style_class_func_varargs Called with " << args.length() << " normal arguments." << std::endl; return Py::None(); } Py::Object old_style_class_func_keyword( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "old_style_class_func_keyword Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::None(); } }; PYCXX_USER_EXCEPTION_STR_ARG( SimpleError ) class simple_module : public Py::ExtensionModule { public: simple_module() : Py::ExtensionModule( "simple" ) // this must be name of the file on disk e.g. simple.so or simple.pyd { old_style_class::init_type(); new_style_class::init_type(); add_varargs_method("old_style_class", &simple_module::factory_old_style_class, "documentation for old_style_class()"); add_keyword_method("func", &simple_module::func, "documentation for func()"); add_keyword_method("func_with_callback", &simple_module::func_with_callback, "documentation for func_with_callback()"); add_keyword_method("func_with_callback_catch_simple_error", &simple_module::func_with_callback_catch_simple_error, "documentation for func_with_callback_catch_simple_error()"); add_keyword_method("make_instance", &simple_module::make_instance, "documentation for make_instance()"); add_keyword_method("str_test", &simple_module::str_test, "documentation for str_test()"); add_keyword_method("decode_test", &simple_module::decode_test, "documentation for decode_test()"); add_keyword_method("encode_test", &simple_module::encode_test, "documentation for encode_test()"); add_keyword_method("derived_class_test", &simple_module::derived_class_test, "documentation for derived_class_test()"); // after initialize the moduleDictionary will exist initialize( "documentation for the simple module" ); Py::Dict d( moduleDictionary() ); d["var"] = Py::String( "var value" ); Py::Object x( new_style_class::type() ); d["new_style_class"] = x; SimpleError::init( *this ); } virtual ~simple_module() {} private: Py::Object decode_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::Bytes s( args[0] ); return s.decode("utf-8"); } Py::Object encode_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::String s( args[0] ); return s.encode("utf-8"); } Py::Object str_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { char buffer[64*1024+1]; memset( &buffer, ' ', sizeof( buffer )-1 ); buffer[sizeof( buffer )-1] = 0; return Py::String( buffer ); } Py::Object derived_class_test( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::PythonClassObject py_nsc( args[0] ); new_style_class *cxx_nsc = py_nsc.getCxxObject(); Py::Long a( args[1] ); Py::Long b( args[2] ); int result = cxx_nsc->cxx_method( a, b ); return Py::Long( result ); } Py::Object func( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "func Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } #ifdef PYCXX_DEBUG if( args.length() > 0 ) { Py::Object x( args[0] ); PyObject *x_p = x.ptr(); std::cout << "func( self=0x" << std::hex << reinterpret_cast< unsigned long >( x_p ) << std::dec << " )" << std::endl; Py::PythonClassInstance *instance_wrapper = reinterpret_cast< Py::PythonClassInstance * >( x_p ); new_style_class *instance = static_cast( instance_wrapper->m_pycxx_object ); std::cout << " self->cxx_object=0x" << std::hex << reinterpret_cast< unsigned long >( instance ) << std::dec << std::endl; } bpt(); #endif return Py::None(); } Py::Object func_with_callback( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::Callable callback_func( args[0] ); Py::Tuple callback_args( 1 ); callback_args[0] = Py::String( "callback_args string" ); return callback_func.apply( callback_args ); } Py::Object func_with_callback_catch_simple_error( const Py::Tuple &args, const Py::Dict &/*kwds*/ ) { Py::Callable callback_func( args[0] ); Py::Tuple callback_args( 1 ); callback_args[0] = Py::String( "callback_args string" ); try { std::cout << "func_with_callback_catch_simple_error calling arg[0]" << std::endl; return callback_func.apply( callback_args ); } catch( SimpleError &e ) { Py::Object value = e.errorValue(); e.clear(); std::cout << "PASS caught SimpleError( \"" << value.repr() << "\"" << std::endl; return Py::String("Error"); } } Py::Object make_instance( const Py::Tuple &args, const Py::Dict &kwds ) { std::cout << "make_instance Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kwds.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } Py::Callable class_type( new_style_class::type() ); Py::PythonClassObject new_style_obj( class_type.apply( args, kwds ) ); return new_style_obj; } Py::Object factory_old_style_class( const Py::Tuple &/*args*/ ) { Py::Object obj = Py::asObject( new old_style_class ); return obj; } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif extern "C" EXPORT_SYMBOL PyObject *PyInit_simple() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif std::cout << "sizeof(int) " << sizeof(int) << std::endl; std::cout << "sizeof(long) " << sizeof(long) << std::endl; std::cout << "sizeof(Py_hash_t) " << sizeof(Py_hash_t) << std::endl; std::cout << "sizeof(Py_ssize_t) " << sizeof(Py_ssize_t) << std::endl; static simple_module* simple = new simple_module; return simple->module().ptr(); } // symbol required for the debug version extern "C" EXPORT_SYMBOL PyObject *PyInit_simple_d() { return PyInit_simple(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/test_simple2.py000644 000765 000024 00000000216 11146066410 023557 0ustar00barrystaff000000 000000 import simple2 m = { simple2.xxx.first: 1, simple2.xxx.second: 2, simple2.xxx.third: 3 } v = m[ simple2.xxx.second ] print( v ) pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/test_example.py000644 000765 000024 00000004375 13305260623 023652 0ustar00barrystaff000000 000000 #----------------------------------------------------------------------------- # # Copyright (c) 1998 - 2007, The Regents of the University of California # Produced at the Lawrence Livermore National Laboratory # All rights reserved. # # This file is part of PyCXX. For details,see http:#cxx.sourceforge.net/. The # full copyright notice is contained in the file COPYRIGHT located at the root # of the PyCXX distribution. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # - Redistributions of source code must retain the above copyright notice, # this list of conditions and the disclaimer below. # - Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the disclaimer (as noted below) in the # documentation and/or materials provided with the distribution. # - Neither the name of the UC/LLNL nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF # CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR # ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. # #----------------------------------------------------------------------------- import sys sys.path.insert( 0, 'pyds%d%d' % (sys.version_info[0], sys.version_info[1]) ) sys.stdout.write( 'Info: ---- %s ----' % (sys.argv[0],) ) sys.stdout.flush() import example example.test() pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/example.cxx000644 000765 000024 00000104242 13662723705 022772 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details, see http://cxx.sourceforge.net. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include #include "range.hxx" // Extension object #include "test_assert.hxx" extern void test_extension_object(); #include void test_compare() { test_assert( "compare == true", true, Py::Long( 100 ) == Py::Long( 100 ) ); test_assert( "compare == false", false, Py::Long( 100 ) == Py::Long( 101 ) ); test_assert( "compare != true", true, Py::Long( 100 ) != Py::Long( 101 ) ); test_assert( "compare != false", false, Py::Long( 100 ) != Py::Long( 100 ) ); test_assert( "compare < true", true, Py::Long( 100 ) < Py::Long( 101 ) ); test_assert( "compare < false", false, Py::Long( 100 ) < Py::Long( 99 ) ); test_assert( "compare <= true", true, Py::Long( 100 ) <= Py::Long( 101 ) ); test_assert( "compare <= true", true, Py::Long( 100 ) <= Py::Long( 100 ) ); test_assert( "compare <= false", false, Py::Long( 100 ) <= Py::Long( 99 ) ); test_assert( "compare > true", true, Py::Long( 100 ) > Py::Long( 99 ) ); test_assert( "compare > false", false, Py::Long( 100 ) > Py::Long( 101 ) ); test_assert( "compare >= true", true, Py::Long( 100 ) >= Py::Long( 99 ) ); test_assert( "compare >= true", true, Py::Long( 100 ) >= Py::Long( 100 ) ); test_assert( "compare >= false", false, Py::Long( 100 ) >= Py::Long( 101 ) ); test_assert( "compare == true", true, Py::Float( 100 ) == Py::Float( 100 ) ); test_assert( "compare == false", false, Py::Float( 100 ) == Py::Float( 101 ) ); test_assert( "compare != true", true, Py::Float( 100 ) != Py::Float( 101 ) ); test_assert( "compare != false", false, Py::Float( 100 ) != Py::Float( 100 ) ); test_assert( "compare < true", true, Py::Float( 100 ) < Py::Float( 101 ) ); test_assert( "compare < false", false, Py::Float( 100 ) < Py::Float( 99 ) ); test_assert( "compare <= true", true, Py::Float( 100 ) <= Py::Float( 101 ) ); test_assert( "compare <= true", true, Py::Float( 100 ) <= Py::Float( 100 ) ); test_assert( "compare <= false", false, Py::Float( 100 ) <= Py::Float( 99 ) ); test_assert( "compare > true", true, Py::Float( 100 ) > Py::Float( 99 ) ); test_assert( "compare > false", false, Py::Float( 100 ) > Py::Float( 101 ) ); test_assert( "compare >= true", true, Py::Float( 100 ) >= Py::Float( 99 ) ); test_assert( "compare >= true", true, Py::Float( 100 ) >= Py::Float( 100 ) ); test_assert( "compare >= false", false, Py::Float( 100 ) >= Py::Float( 101 ) ); } void test_String() { Py::String s( "hello" ); Py::Char blank = ' '; Py::String r1( "world in brief", 5 ); s = s + blank + r1; test_assert( "string concat", s, "hello world" ); s = s * 2; test_assert( "string multiple", s, "hello worldhello world" ); // test conversion std::string w = static_cast( s ); std::string w2 = s; test_assert( "string convert to std::string", w, w2 ); Py::String r2( "12345 789" ); // ord tests Py::Char c3 = r2[2]; long v3 = c3.ord(); test_assert( "string ord value < 2^7", v3, long( 0x33 ) ); Py::Char c4( 0xd5 ); long v4 = c4.ord(); test_assert( "string ord value < 2^8", v4, long( 0xd5 ) ); Py::Char c5( 0x10437 ); long v5 = c5.ord(); test_assert( "string ord value > 2^16", v5, long( 0x10437 ) ); Py::Char c6( 0x10ff00 ); long v6 = c6.ord(); test_assert( "string ord value > 2^16", v6, long( 0x10ff00 ) ); // convert tests Py::Char c7 = r2[5]; test_assert( "string convert to std::string", c7, blank ); Py::Char c8 = r2.front(); Py::Char c9 = r2.back(); } void test_boolean() { Py::Object o; Py::Boolean pb1; Py::Boolean pb2; Py::String st1; Py::Long int1; bool b1; // True tests o = Py::True(); test_assert( "boolean Py::True", o.isTrue(), true ); pb1 = o; test_assert( "boolean true pybool var ", pb1 ? true : false, true ); b1 = pb1; test_assert( "boolean true bool = pybool", b1, true ); pb2 = pb1; test_assert( "boolean true pybool = pybool", pb2 ? true : false, true ); pb2 = true; test_assert( "boolean true pybool = true", pb2 ? true : false, true ); test_assert( "boolean operator bool true", true, bool( pb2 ) ); // False tests o = Py::False(); test_assert( "boolean Py::False", o.isTrue(), false ); pb1 = o; test_assert( "boolean false pybool var ", pb1 ? true : false, false ); b1 = pb1; test_assert( "boolean false bool = pybool", b1, false ); pb2 = pb1; test_assert( "boolean false pybool = pybool", pb2 ? true : false, false ); pb2 = false; test_assert( "boolean false pybool = false", pb2 ? true : false, false ); test_assert( "boolean operator bool false", false, bool( pb2 ) ); // conversion tests int1 = 0; pb1 = int1; test_assert( "boolean int 0", pb1 ? true : false, false ); int1 = 99; pb1 = int1; test_assert( "boolean int 99", pb1 ? true : false, true ); st1 = ""; pb1 = st1; test_assert( "boolean string \"\"", pb1 ? true : false, false ); st1 = "x"; pb1 = st1; test_assert( "boolean string \"x\"", pb1 ? true : false, true ); } void test_long() { long cxx_long1( 100 ); long cxx_long2( 0 ); long cxx_long3( 0 ); Py::Long py_long1( 100 ); Py::Long py_long2( 0 ); Py::Long py_long3( 0 ); test_assert( "long constructor", cxx_long1, py_long1.as_long() ); cxx_long2 = cxx_long1++; py_long2 = py_long1++; test_assert( "long num++", cxx_long2, py_long2.as_long() ); cxx_long2 = ++cxx_long1; py_long2 = ++py_long1; test_assert( "long ++num", cxx_long2, py_long2.as_long() ); cxx_long2 = cxx_long1--; py_long2 = py_long1--; test_assert( "long num--", cxx_long2, py_long2.as_long() ); cxx_long2 = --cxx_long1; py_long2 = --py_long1; test_assert( "long --num", cxx_long2, py_long2.as_long() ); cxx_long1 = 1000; py_long1 = 1000; test_assert( "long num =", cxx_long1, py_long1.as_long() ); // comparison tests cxx_long1 = 2; cxx_long2 = 3; cxx_long3 = 3; py_long1 = cxx_long1; py_long2 = cxx_long2; py_long3 = cxx_long3; // ------------------------------------------------------------ test_assert( "long operator ==", cxx_long2 == cxx_long3, py_long2 == py_long3 ); test_assert( "long operator ==", cxx_long2 == cxx_long3, cxx_long2 == py_long3 ); test_assert( "long operator ==", cxx_long2 == cxx_long3, py_long2 == cxx_long3 ); test_assert( "long operator ==", cxx_long1 == cxx_long3, py_long1 == py_long3 ); test_assert( "long operator ==", cxx_long1 == cxx_long3, cxx_long1 == py_long3 ); test_assert( "long operator ==", cxx_long1 == cxx_long3, py_long1 == cxx_long3 ); // ------------------------------------------------------------ test_assert( "long operator !=", cxx_long1 != cxx_long2, py_long1 != py_long2 ); test_assert( "long operator !=", cxx_long1 != cxx_long2, cxx_long1 != py_long2 ); test_assert( "long operator !=", cxx_long1 != cxx_long2, py_long1 != cxx_long2 ); test_assert( "long operator !=", cxx_long2 != cxx_long3, py_long2 != py_long3 ); test_assert( "long operator !=", cxx_long2 != cxx_long3, cxx_long2 != py_long3 ); test_assert( "long operator !=", cxx_long2 != cxx_long3, py_long2 != cxx_long3 ); // ------------------------------------------------------------ test_assert( "long operator < ", cxx_long1 < cxx_long2, py_long1 < py_long2 ); test_assert( "long operator < ", cxx_long1 < cxx_long2, cxx_long1 < py_long2 ); test_assert( "long operator < ", cxx_long1 < cxx_long2, py_long1 < cxx_long2 ); test_assert( "long operator < ", cxx_long2 < cxx_long1, py_long2 < py_long1 ); test_assert( "long operator < ", cxx_long2 < cxx_long1, cxx_long2 < py_long1 ); test_assert( "long operator < ", cxx_long2 < cxx_long1, py_long2 < cxx_long1 ); // ------------------------------------------------------------ test_assert( "long operator > ", cxx_long2 > cxx_long1, py_long2 > py_long1 ); test_assert( "long operator > ", cxx_long2 > cxx_long1, cxx_long2 > py_long1 ); test_assert( "long operator > ", cxx_long2 > cxx_long1, py_long2 > cxx_long1 ); test_assert( "long operator > ", cxx_long1 > cxx_long2, py_long1 > py_long2 ); test_assert( "long operator > ", cxx_long1 > cxx_long2, cxx_long1 > py_long2 ); test_assert( "long operator > ", cxx_long1 > cxx_long2, py_long1 > cxx_long2 ); // ------------------------------------------------------------ test_assert( "long operator <=", cxx_long1 <= cxx_long2, py_long1 <= py_long2 ); test_assert( "long operator <=", cxx_long1 <= cxx_long2, cxx_long1 <= py_long2 ); test_assert( "long operator <=", cxx_long1 <= cxx_long2, py_long1 <= cxx_long2 ); test_assert( "long operator <=", cxx_long2 <= cxx_long3, py_long2 <= py_long3 ); test_assert( "long operator <=", cxx_long2 <= cxx_long3, cxx_long2 <= py_long3 ); test_assert( "long operator <=", cxx_long2 <= cxx_long3, py_long2 <= cxx_long3 ); test_assert( "long operator <=", cxx_long2 <= cxx_long1, py_long2 <= py_long1 ); test_assert( "long operator <=", cxx_long2 <= cxx_long1, cxx_long2 <= py_long1 ); test_assert( "long operator <=", cxx_long2 <= cxx_long1, py_long2 <= cxx_long1 ); // ------------------------------------------------------------ test_assert( "long operator >=", cxx_long2 >= cxx_long1, py_long2 >= py_long1 ); test_assert( "long operator >=", cxx_long2 >= cxx_long1, cxx_long2 >= py_long1 ); test_assert( "long operator >=", cxx_long2 >= cxx_long1, py_long2 >= cxx_long1 ); test_assert( "long operator >=", cxx_long2 >= cxx_long3, py_long2 >= py_long3 ); test_assert( "long operator >=", cxx_long2 >= cxx_long3, cxx_long2 >= py_long3 ); test_assert( "long operator >=", cxx_long2 >= cxx_long3, py_long2 >= cxx_long3 ); test_assert( "long operator >=", cxx_long1 >= cxx_long2, py_long1 >= py_long2 ); test_assert( "long operator >=", cxx_long1 >= cxx_long2, cxx_long1 >= py_long2 ); test_assert( "long operator >=", cxx_long1 >= cxx_long2, py_long1 >= cxx_long2 ); // ------------------------------------------------------------ test_assert( "long operator long", cxx_long2, long( py_long2 ) ); test_assert( "long operator int", int( cxx_long2 ), int( py_long2 ) ); #ifdef HAVE_LONG_LONG long long cxx_long_long11 = 1152921504616856976ll; long long cxx_long_long12 = 6152921504616856976ll; Py::Long py_long11( cxx_long_long11 ); Py::Long py_long12( 100 ); test_assert( "long long constructor 1", cxx_long_long11, py_long11.as_long_long() ); test_assert( "long long constructor 2", 1152921504616856976ll, py_long11.as_long_long() ); test_assert( "long long constructor 4", 100ll, py_long12.as_long_long() ); py_long12 = cxx_long_long12; test_assert( "long long operator=", cxx_long_long12, py_long12.as_long_long() ); #endif } void test_float() { double cxx_float1( 100 ); double cxx_float2( 0 ); double cxx_float3( 0 ); Py::Float py_float1( 100.0 ); Py::Float py_float2( 0.0 ); Py::Float py_float3( 0.0 ); test_assert( "float constructor", cxx_float1, py_float1.as_double() ); cxx_float1 = 1000; py_float1 = 1000; test_assert( "float num =", cxx_float1, py_float1.as_double() ); // comparison tests cxx_float1 = 2; cxx_float2 = 3; cxx_float3 = 3; py_float1 = cxx_float1; py_float2 = cxx_float2; py_float3 = cxx_float3; //------------------------------------------------------------ test_assert( "float operator ==", cxx_float2 == cxx_float3, py_float2 == py_float3 ); test_assert( "float operator ==", cxx_float2 == cxx_float3, cxx_float2 == py_float3 ); test_assert( "float operator ==", cxx_float2 == cxx_float3, py_float2 == cxx_float3 ); test_assert( "float operator ==", cxx_float1 == cxx_float3, py_float1 == py_float3 ); test_assert( "float operator ==", cxx_float1 == cxx_float3, cxx_float1 == py_float3 ); test_assert( "float operator ==", cxx_float1 == cxx_float3, py_float1 == cxx_float3 ); //------------------------------------------------------------ test_assert( "float operator !=", cxx_float1 != cxx_float2, py_float1 != py_float2 ); test_assert( "float operator !=", cxx_float1 != cxx_float2, cxx_float1 != py_float2 ); test_assert( "float operator !=", cxx_float1 != cxx_float2, py_float1 != cxx_float2 ); test_assert( "float operator !=", cxx_float2 != cxx_float3, py_float2 != py_float3 ); test_assert( "float operator !=", cxx_float2 != cxx_float3, cxx_float2 != py_float3 ); test_assert( "float operator !=", cxx_float2 != cxx_float3, py_float2 != cxx_float3 ); //------------------------------------------------------------ test_assert( "float operator < ", cxx_float1 < cxx_float2, py_float1 < py_float2 ); test_assert( "float operator < ", cxx_float1 < cxx_float2, cxx_float1 < py_float2 ); test_assert( "float operator < ", cxx_float1 < cxx_float2, py_float1 < cxx_float2 ); test_assert( "float operator < ", cxx_float2 < cxx_float1, py_float2 < py_float1 ); test_assert( "float operator < ", cxx_float2 < cxx_float1, cxx_float2 < py_float1 ); test_assert( "float operator < ", cxx_float2 < cxx_float1, py_float2 < cxx_float1 ); //------------------------------------------------------------ test_assert( "float operator > ", cxx_float2 > cxx_float1, py_float2 > py_float1 ); test_assert( "float operator > ", cxx_float2 > cxx_float1, cxx_float2 > py_float1 ); test_assert( "float operator > ", cxx_float2 > cxx_float1, py_float2 > cxx_float1 ); test_assert( "float operator > ", cxx_float1 > cxx_float2, py_float1 > py_float2 ); test_assert( "float operator > ", cxx_float1 > cxx_float2, cxx_float1 > py_float2 ); test_assert( "float operator > ", cxx_float1 > cxx_float2, py_float1 > cxx_float2 ); //------------------------------------------------------------ test_assert( "float operator <=", cxx_float1 <= cxx_float2, py_float1 <= py_float2 ); test_assert( "float operator <=", cxx_float1 <= cxx_float2, cxx_float2 <= py_float2 ); test_assert( "float operator <=", cxx_float1 <= cxx_float2, py_float1 <= cxx_float2 ); test_assert( "float operator <=", cxx_float2 <= cxx_float3, py_float2 <= py_float3 ); test_assert( "float operator <=", cxx_float2 <= cxx_float3, cxx_float2 <= py_float3 ); test_assert( "float operator <=", cxx_float2 <= cxx_float3, py_float2 <= cxx_float3 ); test_assert( "float operator <=", cxx_float2 <= cxx_float1, py_float2 <= py_float1 ); test_assert( "float operator <=", cxx_float2 <= cxx_float1, cxx_float2 <= py_float1 ); test_assert( "float operator <=", cxx_float2 <= cxx_float1, py_float2 <= cxx_float1 ); //------------------------------------------------------------ test_assert( "float operator >=", cxx_float2 >= cxx_float1, py_float2 >= py_float1 ); test_assert( "float operator >=", cxx_float2 >= cxx_float1, cxx_float2 >= py_float1 ); test_assert( "float operator >=", cxx_float2 >= cxx_float1, py_float2 >= cxx_float1 ); test_assert( "float operator >=", cxx_float2 >= cxx_float3, py_float2 >= py_float3 ); test_assert( "float operator >=", cxx_float2 >= cxx_float3, cxx_float2 >= py_float3 ); test_assert( "float operator >=", cxx_float2 >= cxx_float3, py_float2 >= cxx_float3 ); test_assert( "float operator >=", cxx_float1 >= cxx_float2, py_float1 >= py_float2 ); test_assert( "float operator >=", cxx_float1 >= cxx_float2, cxx_float1 >= py_float2 ); test_assert( "float operator >=", cxx_float1 >= cxx_float2, py_float1 >= cxx_float2 ); //------------------------------------------------------------ test_assert( "float operator float", cxx_float2, float( py_float2 ) ); } void test_numbers() { test_long(); test_float(); // test the basic numerical classes Py::Long i; Py::Long j(2); Py::Long k = Py::Long(3); i = 2; Py::Float a; a = 3 + i; //5.0 Py::Float b( 4.0 ); a = (1.0 + 2*a + (b*3.0)/2.0 + k)/Py::Float(5); // 4.0 i = a - 1.0; // 3 test_assert( "number calculation", i.as_long(), k.as_long() ); } void test_List() { // test the Py::List class Py::List list1; Py::List list2; test_assert( "list empty len()", list1.size(), static_cast( 0 ) ); list2.append( Py::String( "list2 index 0" ) ); list2.append( Py::String( "list2 index 1" ) ); list1.append( Py::Long( 3 ) ); list1.append( Py::Float( 6.0 ) ); list1.append( list2 ); list1.append( Py::String( "world" ) ); test_assert( "list len()", static_cast( 4 ), list1.size() ); test_assert( "list index[0]", Py::Long( 3 ), list1[0] ); test_assert( "list index[1]", Py::Float( 6.0 ), list1[1] ); test_assert( "list index[-1]", Py::String( "world" ), list1[-1] ); Py::List::iterator it1 = list1.begin(); test_assert( "list iterator not end != [0]", true, it1 != list1.end() ); test_assert( "list iterator not end == [0]", false, it1 == list1.end() ); test_assert( "list iterator compare [0]", Py::Long( 3 ), *it1 ); ++it1; test_assert( "list iterator not end != [1]", true, it1 != list1.end() ); test_assert( "list iterator not end == [1]", false, it1 == list1.end() ); test_assert( "list iterator compare [1]", Py::Float( 6.0 ), *it1 ); ++it1; test_assert( "list iterator not end != [2]", true, it1 != list1.end() ); test_assert( "list iterator not end == [2]", false, it1 == list1.end() ); test_assert( "list iterator compare [2]", list2, *it1 ); ++it1; Py::List::iterator it2 = list1.end(); test_assert( "list iterator not end != [3]", true, it1 != list1.end() ); test_assert( "list iterator not end == [3]", false, it1 == list1.end() ); test_assert( "list iterator compare [3]", Py::String( "world" ), *it1 ); ++it1; test_assert( "list iterator at end != [4]", false, it1 != list1.end() ); test_assert( "list iterator at end == [4]", true, it1 == list1.end() ); list1[ 3 ] = Py::String( "hello" ); test_assert( "list index assign", list1[ 3 ], Py::String( "hello" ) ); Py::List list3; list3 = list1 + list2; test_assert( "list operator+ count", static_cast( 6 ), list3.size() ); Py::Tuple tuple1( list1 ); test_assert( "list construct from tuple", list1.size(), tuple1.size() ); } void test_Tuple() { // test the Tuple class Py::Float f1( 1.0 ); Py::Float f2( 2.0 ); Py::Float f3( 3.0 ); Py::Tuple tuple1( 3 ); tuple1[0] = f1; // should be ok since no other reference owned tuple1[1] = f2; tuple1[2] = f3; Py::Tuple tuple2( tuple1 ); Py::Tuple::iterator it2 = tuple2.begin(); test_assert( "tuple iterator not end [0]", true, it2 != tuple2.end() ); test_assert( "tuple iterator compare [0]", Py::Float( 1.0 ), *it2 ); ++it2; test_assert( "tuple iterator not end [1]", true, it2 != tuple2.end() ); test_assert( "tuple iterator compare [1]", Py::Float( 2.0 ), *it2 ); ++it2; test_assert( "tuple iterator not end [2]", true, it2 != tuple2.end() ); test_assert( "tuple iterator compare [2]", Py::Float( 3.0 ), *it2 ); ++it2; test_assert( "tuple iterator at end [3]", true, it2 == tuple2.end() ); bool test_passed = false; Py::Tuple tuple3 = tuple1; try { tuple3[0] = Py::Long( 1 ); // should fail, tuple has multiple references } catch( Py::BaseException &e ) { e.clear(); test_passed = true; } test_assert( "tuple assign exception with multiple referencese", test_passed, true ); Py::List list1( tuple1 ); test_assert( "tuple construct from list", list1.size(), tuple1.size() ); Py::TupleN t0; test_assert( "TupleN construction", 0, t0.size() ); Py::TupleN t1( Py::Long( 1 ) ); test_assert( "TupleN construction", 1, t1.size() ); Py::TupleN t2( Py::Long( 1 ), Py::Long( 2 ) ); test_assert( "TupleN construction", 2, t2.size() ); Py::TupleN t3( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ) ); test_assert( "TupleN construction", 3, t3.size() ); Py::TupleN t4( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ) ); test_assert( "TupleN construction", 4, t4.size() ); Py::TupleN t5( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ), Py::Long( 5 ) ); test_assert( "TupleN construction", 5, t5.size() ); Py::TupleN t6( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ), Py::Long( 5 ), Py::Long( 6 ) ); test_assert( "TupleN construction", 6, t6.size() ); Py::TupleN t7( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ), Py::Long( 5 ), Py::Long( 6 ), Py::Long( 7 ) ); test_assert( "TupleN construction", 7, t7.size() ); Py::TupleN t8( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ), Py::Long( 5 ), Py::Long( 6 ), Py::Long( 7 ), Py::Long( 8 ) ); test_assert( "TupleN construction", 8, t8.size() ); Py::TupleN t9( Py::Long( 1 ), Py::Long( 2 ), Py::Long( 3 ), Py::Long( 4 ), Py::Long( 5 ), Py::Long( 6 ), Py::Long( 7 ), Py::Long( 8 ), Py::Long( 9 ) ); test_assert( "TupleN construction", 9, t9.size() ); } void test_Dict() { // test the Dict class Py::Dict dict1; Py::List list1; Py::String str1( "two" ); dict1[ "one" ] = Py::Long( 1 ); dict1[ str1 ] = Py::Long( 2 ); dict1[ "three" ] = Py::Long( 3 ); test_assert( "dict index[char *]", dict1[ "one" ], Py::Long( 1 ) ); test_assert( "dict index[std::string]", dict1[ std::string("one") ], Py::Long( 1 ) ); test_assert( "dict index[Py::String]", dict1[ str1 ], Py::Long( 2 ) ); test_assert( "dict keys()", dict1.keys().size(), static_cast( 3 ) ); test_assert( "dict values()", dict1.values().size(), static_cast( 3 ) ); Py::Dict::iterator it1 = dict1.begin(); test_assert( "dict iterator not end != [0]", true, it1 != dict1.end() ); test_assert( "dict iterator not end == [0]", false, it1 == dict1.end() ); ++it1; test_assert( "dict iterator not end != [1]", true, it1 != dict1.end() ); test_assert( "dict iterator not end == [1]", false, it1 == dict1.end() ); ++it1; test_assert( "dict iterator not end != [2]", true, it1 != dict1.end() ); test_assert( "dict iterator not end == [2]", false, it1 == dict1.end() ); ++it1; Py::Dict::iterator it2 = dict1.end(); bool x = it1 != it2; test_assert( "x", false, x ); test_assert( "dict iterator at end != [3]", false, it1 != dict1.end() ); test_assert( "dict iterator at end == [3]", true, it1 == dict1.end() ); list1 = dict1.values(); list1.sort(); for( long k = 1; k < 4; ++k ) { test_assert( "dict values as expected", Py::Long( list1[ k-1 ] ).as_long(), k ); } Py::Dict dict2 = dict1; dict2.clear(); test_assert( "dict clear()", dict2.keys().length(), Py_ssize_t( 0 ) ); const Py::Dict c; for (Py::Dict::const_iterator it = c.begin(); it != c.end(); ++it) { } } void test_STL() { Py::List list1; list1.append( Py::Long(5) ); list1.append( Py::Long(1) ); list1.append( Py::Long(4) ); list1.append( Py::Long(2) ); list1.append( Py::Long(3) ); list1.append( Py::Long(1) ); test_assert( "STL count", 2, std::count( list1.begin(), list1.end(), Py::Long( 1 ) ) ); Py::Dict dict1; Py::String s1( "blah" ); Py::String s2( "gorf" ); dict1[ "one" ] = s1; dict1[ "two" ] = s1; dict1[ "three" ] = s2; dict1[ "four" ] = s2; Py::Dict::iterator it( dict1.begin() ); test_assert( "STL ad hoc", true, it != dict1.end() ); while( it != dict1.end() ) { Py::Dict::value_type vt( *it ); Py::String rs = vt.second.repr(); Py::Bytes bs = rs.encode( "utf-8" ); std::string ls = bs.as_std_string(); std::cout << "STL test: " << ls << std::endl; ++it; } } void debug_check_ref_queue() { #ifdef Py_TRACE_REFS // create an element to find the queue Py::Long list_element; PyObject *p_slow = list_element.ptr(); PyObject *p_fast = p_slow; do { assert( p_slow->_ob_next->_ob_prev == p_slow ); assert( p_slow->_ob_prev->_ob_next == p_slow ); p_slow = p_slow->_ob_next; p_fast = p_slow->_ob_next->_ob_next; assert( p_slow != p_fast ); } while( p_slow != list_element.ptr() ); #endif } class example_module : public Py::ExtensionModule { public: example_module() : Py::ExtensionModule( "example" ) { range::init_type(); add_varargs_method( "string", &example_module::ex_string, "string( s ) = return string" ); add_varargs_method( "sum", &example_module::ex_sum, "sum( arglist ) = sum of arguments" ); add_varargs_method( "test", &example_module::ex_test, "test( arglist ) runs a test suite" ); add_varargs_method( "range", &example_module::new_r, "range( start, stop, step )" ); add_varargs_method( "return_arg", &example_module::ex_return_arg, "return_arg( arg )" ); add_keyword_method( "kw", &example_module::ex_keyword, "kw()" ); initialize( "documentation for the example module" ); Py::Dict d( moduleDictionary() ); Py::Object b( Py::asObject( new range( 1, 10, 2 ) ) ); d["a_constant"] = b.getAttr("c"); d["a_range"] = b; } virtual ~example_module() {} private: Py::Object ex_keyword( const Py::Tuple &args, const Py::Dict &kws ) { std::cout << "Called with " << args.length() << " normal arguments." << std::endl; Py::List names( kws.keys() ); std::cout << "and with " << names.length() << " keyword arguments:" << std::endl; for( Py::List::size_type i=0; i< names.length(); i++ ) { Py::String name( names[i] ); std::cout << " " << name << std::endl; } return Py::Long(0); } Py::Object new_r( const Py::Tuple &rargs ) { if( rargs.length() < 2 || rargs.length() > 3 ) { throw Py::RuntimeError("Incorrect # of args to range(start,stop [,step])."); } Py::Long start( rargs[0] ); Py::Long stop( rargs[1] ); Py::Long step( 1 ); if (rargs.length() == 3) { step = rargs[2]; } std::cout << "new_r" << " start: " << start.as_long() << " stop: " << stop.as_long() << " step: " << step.as_long() << std::endl; if( start.as_long() > stop.as_long() + 1 || step.as_long() == 0 ) { throw Py::RuntimeError("Bad arguments to range( start, stop [,step] )"); } return Py::asObject( new range( start.as_long(), stop.as_long(), step.as_long() ) ); } Py::Object ex_string( const Py::Tuple &a ) { std::cout << "ex_std::string: s1 is first arg" << std::endl; Py::Object o1( a[0] ); std::cout << "ex_string: s1.isString() " << o1.isString() << std::endl; if( o1.isString() ) { Py::String s1( o1 ); std::cout << "ex_string: s1.size() " << s1.size() << std::endl; std::cout << "ex_string: s2 is s1.encode( utf-8 )" << std::endl; Py::Bytes b1( s1.encode( "utf-8" ) ); std::cout << "ex_string: s1.isString() " << b1.isString() << std::endl; std::cout << "ex_string: s1.size() " << b1.size() << std::endl; return b1; } else { Py::Bytes b1( o1 ); std::cout << "ex_string: s1 is b1.decode( utf-8 )" << std::endl; Py::String s1( b1.decode( "utf-8" ) ); std::cout << "ex_string: s1.isString() " << s1.isString() << std::endl; std::cout << "ex_string: s1.size() " << s1.size() << std::endl; return s1; } } Py::Object ex_return_arg( const Py::Tuple &a ) { return a[0]; } Py::Object ex_sum( const Py::Tuple &a ) { // this is just to test the function verify_length: try { a.verify_length(0); std::cout << "I see that you refuse to give me any work to do." << std::endl; } catch (Py::BaseException& e) { e.clear(); std::cout << "I will now add up your elements, oh great one." << std::endl; } Py::Float f(0.0); for( Py::Sequence::size_type i = 0; i < a.length(); i++ ) { Py::Float g (a[i]); f = f + g; } return f; } void test_apply() { Py::Module m("example"); Py::Callable fn = m.getAttr("return_arg"); Py::String s("test_apply string"); int start_ref = s.reference_count(); for( int i=0; i<10; ++i ) { Py::String result = fn.apply( Py::TupleN( s ) ); } int end_ref = s.reference_count(); test_assert( "apply ref check", start_ref, end_ref ); } Py::Object ex_test( const Py::Tuple &/*args*/ ) { debug_check_ref_queue(); std::cout << "Example Test starting" << std::endl; try { Py::String s("this should fail"); Py::Long k( s.ptr() ); throw TestError( "convert a Py::String to an Py::Long must not succeed" ); } catch( Py::TypeError &e ) { e.clear(); std::cout << "PASSED: Correctly caught " << Py::type(e) << std::endl; std::cout << "PASSED: Py::BaseException value: " << Py::value(e) << std::endl; std::cout << "PASSED: Py::BaseException traceback: " << Py::trace(e) << std::endl; } try { debug_check_ref_queue(); std::cout << "Start: test_compare" << std::endl; test_compare(); debug_check_ref_queue(); std::cout << "Start: test_boolean" << std::endl; test_boolean(); debug_check_ref_queue(); std::cout << "Start: test_numbers" << std::endl; test_numbers(); debug_check_ref_queue(); std::cout << "Start: test_String" << std::endl; test_String(); debug_check_ref_queue(); std::cout << "Start: test_List" << std::endl; test_List(); debug_check_ref_queue(); std::cout << "Start: test_Dict" << std::endl; test_Dict(); debug_check_ref_queue(); std::cout << "Start: test_Tuple" << std::endl; test_Tuple(); debug_check_ref_queue(); std::cout << "Start: test_STL" << std::endl; test_STL(); std::cout << "Done: test_STL" << std::endl; debug_check_ref_queue(); std::cout << "Start: test_extension_object" << std::endl; test_extension_object(); debug_check_ref_queue(); std::cout << "Start: test_apply" << std::endl; test_apply(); debug_check_ref_queue(); } catch( TestError &e ) { std::cout << "FAILED: Test error - " << e.m_description << std::endl; } Py::Module m("sys"); Py::Object s = m.getAttr("stdout"); Py::Object fd = s.callMemberFunction( "fileno" ); test_assert( "stdout fileno() is 1", fd, Py::Long( 1 ) ); Py::Object num = s.callMemberFunction( "write", Py::TupleN( Py::String("PASS: Module test ok.\n") ) ); return Py::None(); } }; #if defined( _WIN32 ) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif extern "C" EXPORT_SYMBOL PyObject *PyInit_example() { #if defined(PY_WIN32_DELAYLOAD_PYTHON_DLL) Py::InitialisePythonIndirectPy::Interface(); #endif static example_module *example = new example_module; return example->module().ptr(); } // symbol required for the debug version extern "C" EXPORT_SYMBOL PyObject *PyInit_example_d() { return PyInit_example(); } pysvn-1.9.22/Import/pycxx-7.1.9/Demo/Python3/range.cxx000644 000765 000024 00000013254 13662723705 022435 0ustar00barrystaff000000 000000 //----------------------------------------------------------------------------- // // Copyright (c) 1998 - 2007, The Regents of the University of California // Produced at the Lawrence Livermore National Laboratory // All rights reserved. // // This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The // full copyright notice is contained in the file COPYRIGHT located at the root // of the PyCXX distribution. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are met: // // - Redistributions of source code must retain the above copyright notice, // this list of conditions and the disclaimer below. // - Redistributions in binary form must reproduce the above copyright notice, // this list of conditions and the disclaimer (as noted below) in the // documentation and/or materials provided with the distribution. // - Neither the name of the UC/LLNL nor the names of its contributors may be // used to endorse or promote products derived from this software without // specific prior written permission. // // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF // CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR // ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL // DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR // SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER // CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT // LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY // OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH // DAMAGE. // //----------------------------------------------------------------------------- #ifdef _MSC_VER // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning( disable: 4786 ) #endif #include "range.hxx" // Connect range objects to Python range::range( long start, long stop, long step ) : Py::PythonExtension() , m_start( start ) , m_stop( stop ) , m_step( step ) { std::cout << "range object created " << this << " " << asString() << std::endl; } range::~range() { std::cout << "range object destroyed " << this << std::endl; } Py_ssize_t range::length() const { return (m_stop - m_start + 1)/m_step; } int range::item( long i ) const { if( i >= length() ) // this exception stops a Python for loop over range. throw Py::IndexError("index too large"); return m_start + i * m_step; } range *range::slice( Py_ssize_t i, Py_ssize_t j ) const { long first = m_start + static_cast( i ) * m_step; long last = m_start + static_cast( j ) * m_step; return new range( first, last, m_step ); } range *range::extend( Py_ssize_t k ) const { return new range( m_start, m_stop + static_cast( k ), m_step); } std::string range::asString() const { std::OSTRSTREAM s; s << "range(" << m_start << ", " << m_stop << ", " << m_step << ")"; return std::string( s.str() ); } Py::Object range::reference_count( const Py::Tuple &/*args*/ ) { return Py::Long( ob_refcnt ); } Py::Object range::c_value(const Py::Tuple&) const { Py::List result; for( int i = m_start; i <= m_stop; i += m_step ) { result.append( Py::Long(i) ); } return result; } void range::c_assign( const Py::Tuple &, const Py::Object &rhs ) { Py::Tuple w( rhs ); w.verify_length( 3 ); m_start = Py::Long( w[0] ).as_long(); m_stop = Py::Long( w[1] ).as_long(); m_step = Py::Long( w[2] ).as_long(); } Py::Object range::repr() { return Py::String( asString() ); } Py_ssize_t range::sequence_length() { return static_cast( length() ); } Py::Object range::sequence_item( Py_ssize_t i ) { return Py::Long( item( static_cast( i ) ) ); } Py::Object range::sequence_concat( const Py::Object &j ) { Py::Long k( j ); return Py::asObject( extend( k.as_long() ) ); } Py::Object range::sequence_slice( Py_ssize_t i, Py_ssize_t j ) { return Py::asObject( slice( i, j ) ); } Py::Object range::getattr( const char *name ) { if( std::string( name ) == "c" ) return Py::Float( 300.0 ); if( std::string( name ) == "start" ) return Py::Long( m_start ); return getattr_methods( name ); } // "regular" methods... Py::Object range::amethod( const Py::Tuple &t ) { t.verify_length( 1 ); Py::List result; result.append( Py::Object( this ) ); result.append( t[0] ); return result; } Py::Object range::value( const Py::Tuple &t ) { return c_value( t ); } Py::Object range::assign( const Py::Tuple &t ) { t.verify_length( 2 ); Py::Tuple t1( t[0] ); // subscripts Py::Object o2( t[1] ); // rhs; c_assign ( t1, o2 ); return Py::None(); } void range::init_type() { behaviors().name( "example.range" ); behaviors().doc( "range objects: start, stop, step" ); behaviors().supportRepr(); behaviors().supportGetattr(); behaviors().supportSequenceType(); add_varargs_method( "amethod", &range::amethod, "demonstrate how to document amethod" ); add_varargs_method( "assign", &range::assign ); add_varargs_method( "value", &range::value ); add_varargs_method( "reference_count", &range::reference_count ); behaviors().readyType(); } pysvn-1.9.22/Examples/Client/000755 000765 000024 00000000000 14527655012 016251 5ustar00barrystaff000000 000000 pysvn-1.9.22/Examples/Client/pysvn_print_doc.py000644 000765 000024 00000000320 10016223412 022016 0ustar00barrystaff000000 000000 import pysvn print 'pysvn.__doc__' print pysvn.__doc__ print 'dir(pysvn)' print dir(pysvn) print 'pysvn.Client.__doc__' print pysvn.Client.__doc__ print 'pysvn.Revision.__doc__' print pysvn.Revision.__doc__ pysvn-1.9.22/Examples/Client/svn_cmd.py000644 000765 000024 00000204132 14256071756 020264 0ustar00barrystaff000000 000000 ''' ==================================================================== Copyright (c) 2003-2009 Barry A Scott. All rights reserved. This software is licensed as described in the file LICENSE.txt, which you should have received as part of this distribution. ==================================================================== ''' import pysvn import time import sys import os import parse_datetime import glob import locale import types if sys.version_info.major == 2: # suport cp65001 aka utf-8 import codecs codecs.register(lambda name: codecs.lookup('utf-8') if name == 'cp65001' else None) try: sorted( [] ) except NameError: def sorted( list_in ): list_out = list( list_in ) list_out.sort() return list_out if hasattr( types, 'StringTypes' ): StringTypes = types.StringTypes else: StringTypes = [type( '' )] if hasattr( types, 'DictType' ): DictType = types.DictType else: DictType = type( {} ) class CommandError( Exception ): def __init__( self, reason ): Exception.__init__( self ) self._reason = reason def reason( self ): return self._reason def __str__( self ): return self._reason def main( args ): progname = os.path.basename( args[0] ) pause = False if args[1:2] == ['--pause']: del args[1] pause = True # if the locale is not setup SVN can report errors handling non ascii file names initLocale() svn_cmd = SvnCommand( progname ) rc = svn_cmd.dispatch( args[1:] ) if pause: sys.stdin.readline() return rc def initLocale(): # init the locale if sys.platform in ['win32','cygwin']: locale.setlocale( locale.LC_ALL, '' ) else: language_code, encoding = locale.getlocale() if language_code is None: language_code = 'en_GB' if encoding is None: encoding = 'UTF-8' if encoding.lower() == 'utf': encoding = 'UTF-8' try: # setlocale fails when params it does not understand are passed locale.setlocale( locale.LC_ALL, '%s.%s' % (language_code, encoding) ) except locale.Error: # force a locale that will work locale.setlocale( locale.LC_ALL, 'en_GB.UTF-8' ) def fmtDateTime( t ): return time.strftime( '%d-%b-%Y %H:%M:%S', time.localtime( t ) ) wc_status_kind_map = { pysvn.wc_status_kind.added: 'A', pysvn.wc_status_kind.conflicted: 'C', pysvn.wc_status_kind.deleted: 'D', pysvn.wc_status_kind.external: 'X', pysvn.wc_status_kind.ignored: 'I', pysvn.wc_status_kind.incomplete: '!', pysvn.wc_status_kind.missing: '!', pysvn.wc_status_kind.merged: 'G', pysvn.wc_status_kind.modified: 'M', pysvn.wc_status_kind.none: ' ', pysvn.wc_status_kind.normal: ' ', pysvn.wc_status_kind.obstructed: '~', pysvn.wc_status_kind.replaced: 'R', pysvn.wc_status_kind.unversioned: '?', } wc_notify_action_map = { pysvn.wc_notify_action.add: 'A', pysvn.wc_notify_action.commit_added: 'A', pysvn.wc_notify_action.commit_deleted: 'D', pysvn.wc_notify_action.commit_modified: 'M', pysvn.wc_notify_action.commit_postfix_txdelta: None, pysvn.wc_notify_action.commit_replaced: 'R', pysvn.wc_notify_action.copy: 'c', pysvn.wc_notify_action.delete: 'D', pysvn.wc_notify_action.failed_revert: 'F', pysvn.wc_notify_action.resolved: 'R', pysvn.wc_notify_action.restore: 'R', pysvn.wc_notify_action.revert: 'R', pysvn.wc_notify_action.skip: 'skip', pysvn.wc_notify_action.status_completed: None, pysvn.wc_notify_action.status_external: 'X', pysvn.wc_notify_action.update_add: 'A', pysvn.wc_notify_action.update_completed: None, pysvn.wc_notify_action.update_delete: 'D', pysvn.wc_notify_action.update_external: 'X', pysvn.wc_notify_action.update_update: 'U', pysvn.wc_notify_action.annotate_revision: 'A', } # new in svn 1.4? if hasattr( pysvn.wc_notify_action, 'locked' ): wc_notify_action_map[ pysvn.wc_notify_action.locked ] = 'locked' wc_notify_action_map[ pysvn.wc_notify_action.unlocked ] = 'unlocked' wc_notify_action_map[ pysvn.wc_notify_action.failed_lock ] = 'failed_lock' wc_notify_action_map[ pysvn.wc_notify_action.failed_unlock ] = 'failed_unlock' # new in svn 1.5 if hasattr( pysvn.wc_notify_action, 'exists' ): wc_notify_action_map[ pysvn.wc_notify_action.exists ] = 'exists' wc_notify_action_map[ pysvn.wc_notify_action.changelist_set ] = 'changelist_set' wc_notify_action_map[ pysvn.wc_notify_action.changelist_clear ] = 'changelist_clear' wc_notify_action_map[ pysvn.wc_notify_action.changelist_moved ] = 'changelist_moved' wc_notify_action_map[ pysvn.wc_notify_action.foreign_merge_begin ] = 'foreign_merge_begin' wc_notify_action_map[ pysvn.wc_notify_action.merge_begin ] = 'merge_begin' wc_notify_action_map[ pysvn.wc_notify_action.update_replace ] = 'update_replace' # new in svn 1.6 if hasattr( pysvn.wc_notify_action, 'property_added' ): wc_notify_action_map[ pysvn.wc_notify_action.property_added ] = 'property_added' wc_notify_action_map[ pysvn.wc_notify_action.property_modified ] = 'property_modified' wc_notify_action_map[ pysvn.wc_notify_action.property_deleted ] = 'property_deleted' wc_notify_action_map[ pysvn.wc_notify_action.property_deleted_nonexistent ] = 'property_deleted_nonexistent' wc_notify_action_map[ pysvn.wc_notify_action.revprop_set ] = 'revprop_set' wc_notify_action_map[ pysvn.wc_notify_action.revprop_deleted ] = 'revprop_deleted' wc_notify_action_map[ pysvn.wc_notify_action.merge_completed ] = 'merge_completed' wc_notify_action_map[ pysvn.wc_notify_action.tree_conflict ] = 'tree_conflict' wc_notify_action_map[ pysvn.wc_notify_action.failed_external ] = 'failed_external' # new in svn 1.7 if hasattr( pysvn.wc_notify_action, 'update_started' ): wc_notify_action_map[ pysvn.wc_notify_action.update_started ] = 'update_started' wc_notify_action_map[ pysvn.wc_notify_action.update_skip_obstruction ] = 'update_skip_obstruction' wc_notify_action_map[ pysvn.wc_notify_action.update_skip_working_only ] = 'update_skip_working_only' wc_notify_action_map[ pysvn.wc_notify_action.update_external_removed ] = 'update_external_removed' wc_notify_action_map[ pysvn.wc_notify_action.update_shadowed_add ] = 'update_shadowed_add' wc_notify_action_map[ pysvn.wc_notify_action.update_shadowed_update ] = 'update_shadowed_update' wc_notify_action_map[ pysvn.wc_notify_action.update_shadowed_delete ] = 'update_shadowed_delete' wc_notify_action_map[ pysvn.wc_notify_action.merge_record_info ] = 'merge_record_info' wc_notify_action_map[ pysvn.wc_notify_action.upgraded_path ] = 'upgraded_path' wc_notify_action_map[ pysvn.wc_notify_action.merge_record_info_begin ] = 'merge_record_info_begin' wc_notify_action_map[ pysvn.wc_notify_action.merge_elide_info ] = 'merge_elide_info' wc_notify_action_map[ pysvn.wc_notify_action.patch ] = 'patch' wc_notify_action_map[ pysvn.wc_notify_action.patch_applied_hunk ] = 'patch_applied_hunk' wc_notify_action_map[ pysvn.wc_notify_action.patch_rejected_hunk ] = 'patch_rejected_hunk' wc_notify_action_map[ pysvn.wc_notify_action.patch_hunk_already_applied ] = 'patch_hunk_already_applied' wc_notify_action_map[ pysvn.wc_notify_action.commit_copied ] = 'commit_copied' wc_notify_action_map[ pysvn.wc_notify_action.commit_copied_replaced ] = 'commit_copied_replaced' wc_notify_action_map[ pysvn.wc_notify_action.url_redirect ] = 'url_redirect' wc_notify_action_map[ pysvn.wc_notify_action.path_nonexistent ] = 'path_nonexistent' wc_notify_action_map[ pysvn.wc_notify_action.exclude ] = 'exclude' wc_notify_action_map[ pysvn.wc_notify_action.failed_conflict ] = 'failed_conflict' wc_notify_action_map[ pysvn.wc_notify_action.failed_missing ] = 'failed_missing' wc_notify_action_map[ pysvn.wc_notify_action.failed_out_of_date ] = 'failed_out_of_date' wc_notify_action_map[ pysvn.wc_notify_action.failed_no_parent ] = 'failed_no_parent' # new in svn 1.7.1+? if hasattr( pysvn.wc_notify_action, 'failed_locked' ): wc_notify_action_map[ pysvn.wc_notify_action.failed_locked ] = 'failed_locked' wc_notify_action_map[ pysvn.wc_notify_action.failed_forbidden_by_server ] = 'failed_forbidden_by_server' wc_notify_action_map[ pysvn.wc_notify_action.skip_conflicted ] = 'skip_conflicted' # new in svn 1.8 if hasattr( pysvn.wc_notify_action, 'update_broken_lock' ): wc_notify_action_map[ pysvn.wc_notify_action.update_broken_lock ] = 'update_broken_lock' wc_notify_action_map[ pysvn.wc_notify_action.failed_obstruction ] = 'failed_obstruction' wc_notify_action_map[ pysvn.wc_notify_action.conflict_resolver_starting ] = 'conflict_resolver_starting' wc_notify_action_map[ pysvn.wc_notify_action.conflict_resolver_done ] = 'conflict_resolver_done' wc_notify_action_map[ pysvn.wc_notify_action.left_local_modifications ] = 'left_local_modifications' wc_notify_action_map[ pysvn.wc_notify_action.foreign_copy_begin ] = 'foreign_copy_begin' wc_notify_action_map[ pysvn.wc_notify_action.move_broken ] = 'move_broken' # new in svn 1.9 if hasattr( pysvn.wc_notify_action, 'cleanup_external' ): wc_notify_action_map[ pysvn.wc_notify_action.cleanup_external ] = 'cleanup_external' wc_notify_action_map[ pysvn.wc_notify_action.failed_requires_target ] = 'failed_requires_target' wc_notify_action_map[ pysvn.wc_notify_action.info_external ] = 'info_external' wc_notify_action_map[ pysvn.wc_notify_action.commit_finalizing ] = 'commit_finalizing' class SvnCommand: def __init__( self, progname ): self.progname = progname self.client = None self.revision_update_complete = None self.notify_message_list = [] self.pysvn_testing = False self.debug_enabled = False self.next_log_message = None def debug( self, msg, args=() ): if self.debug_enabled: print( 'Debug: %s' % (msg % args) ) def initClient( self, config_dir ): self.client = pysvn.Client( config_dir ) self.client.exception_style = 1 self.client.commit_info_style = 1 self.client.callback_get_login = self.callback_getLogin self.client.callback_get_log_message = self.callback_getLogMessage self.client.callback_notify = self.callback_notify self.client.callback_cancel = self.callback_cancel if hasattr( self.client, 'callback_conflict_resolver' ): self.client.callback_conflict_resolver = self.callback_conflict_resolver self.client.callback_cancel = self.callback_cancel self.client.callback_ssl_client_cert_password_prompt = self.callback_ssl_client_cert_password_prompt self.client.callback_ssl_client_cert_prompt = self.callback_ssl_client_cert_prompt self.client.callback_ssl_server_prompt = self.callback_ssl_server_prompt self.client.callback_ssl_server_trust_prompt = self.callback_ssl_server_trust_prompt def callback_ssl_client_cert_password_prompt( self ): print( 'callback_ssl_client_cert_password_prompt' ) def callback_ssl_client_cert_prompt( self ): print( 'callback_ssl_client_cert_prompt' ) def callback_ssl_server_prompt( self ): print( 'callback_ssl_server_prompt' ) def callback_ssl_server_trust_prompt( self, trust_data ): for key,value in trust_data.items(): print( '%s: %s' % (key, value) ) print('') answer = '' while answer.lower() not in ['p','t','r']: sys.stdout.write( '(P)ermanent accept, (T)emporary accept or (R)eject: ' ) answer = sys.stdin.readline().strip() if answer.lower() == 'p': return True, trust_data['failures'], True if answer.lower() == 't': return True, trust_data['failures'], False return False, 0, False def callback_cancel( self ): return False def callback_notify( self, arg_dict ): if arg_dict['action'] == pysvn.wc_notify_action.update_completed: self.revision_update_complete = arg_dict['revision'] elif arg_dict['path'] != '' and wc_notify_action_map[ arg_dict['action'] ] is not None: msg = '%s %s' % (wc_notify_action_map[ arg_dict['action'] ], arg_dict['path']) if self.pysvn_testing != '99.99.99': self.notify_message_list.append( msg ) else: print( msg ) def callback_conflict_resolver( self, arg_dict ): print( 'callback_conflict_resolver' ) for key in sorted( arg_dict.keys() ): value = arg_dict[ key ] if type(value) == DictType: value = '{%s}' % (', '.join( ['%r: %r' % (key, value) for key, value in sorted( value.items() )] ),) elif type(value) not in StringTypes: value = repr(value) print( ' %s: %s' % (key, value) ) return pysvn.wc_conflict_choice.postpone, None, False def callback_getLogin( self, realm, username, may_save ): print( 'May save: %s ' % may_save ) print( 'Realm: %s ' % realm ) if username: print( 'Username: %s' % username ) else: sys.stdout.write( 'Username: ' ) username = sys.stdin.readline().strip() if len(username) == 0: return 0, '', '', False sys.stdout.write( 'Password: ' ) password = sys.stdin.readline().strip() save_password = 'x' while save_password.lower() not in ['y','ye','yes','n', 'no','']: sys.stdout.write( 'Save password? [y/n] ' ) save_password = sys.stdin.readline().strip() return 1, username, password, save_password in ['y','ye','yes'] def getLogMessage( self ): if self.next_log_message is not None: message = self.next_log_message self.next_log_message = None return message sys.stdout.write( 'Log message\n' ) sys.stdout.write( '--- -------\n' ) message = sys.stdin.read() return message def callback_getLogMessage( self ): return True, self.getLogMessage() def dispatch( self, argv ): try: args = SvnArguments( argv ) cmd_name = 'cmd_%s' % args.getCommandName( 'help' ) self.initClient( args.getOptionalValue( '--config-dir', '' ) ) self.client.set_auth_cache( args.getBooleanOption( '--no-auth-cache', False ) ) self.pysvn_testing = args.getOptionalValue( '--pysvn-testing', '99.99.99' ) self.debug_enabled = args.getBooleanOption( '--debug', True ) getattr( self, cmd_name, self.cmd_help )( args ) self.printNotifyMessages() except pysvn.ClientError as e: self.printNotifyMessages() print( e.args[0] ) return 1 except CommandError as e: self.printNotifyMessages() print( e.reason() ) return 1 return 0 def printNotifyMessages( self ): # different versions of SVN notify messages in different orders # by sorting before printing we hope to have one set of regression # test data for multiple versions of SVN self.notify_message_list.sort() for msg in self.notify_message_list: print( msg ) self.notify_message_list = [] def cmd_version( self, args ): print( 'PYSVN Version: %r' % (pysvn.version,) ) print( 'SVN Version: %r' % (pysvn.svn_version,) ) if hasattr( pysvn, 'svn_api_version' ): print( 'SVN API Version: %r' % (pysvn.svn_api_version,) ) print( 'pysvn._pysvn %r' % (pysvn._pysvn,) ) def cmd_is_url( self, args ): path = args.getPositionalArgs( 1 )[0] is_url = self.client.is_url( path ) if is_url: print( 'url %s' % path ) else: print( 'path %s' % path ) def cmd_add( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) force = args.getBooleanOption( '--force', False ) self.client.add( args.getPositionalArgs( 1 ), recurse=recurse, force=force ) def cmd_add_to_changelist( self, args ): if not hasattr( self.client, add_to_changelist ): print( 'Error: add_to_changelist is not supported by this version of Subversion' ) return path, changelist = args.getPositionalArgs( 2, 2 ) self.client.add_to_changelist( path, changelist ) def cmd_annotate( self, args ): start_revision, end_revision = args.getOptionalRevisionPair( '--revision', '0', 'head' ) positional_args = args.getPositionalArgs( 1, 1 ) all_lines = self.client.annotate( positional_args[0], revision_start=start_revision, revision_end=end_revision ) self.printNotifyMessages() for line in all_lines: print( '%d| r%d | %s | %s | %s' % (line['number']+1 ,line['revision'].number ,line['author'] ,line['date'] ,line['line']) ) cmd_ann = cmd_annotate def cmd_annotate2( self, args ): if not hasattr( self.client, 'annotate2' ): print( 'annotate2 is not available in this version of subversion' ) return start_revision, end_revision = args.getOptionalRevisionPair( '--revision', '0', 'head' ) positional_args = args.getPositionalArgs( 1, 1 ) all_lines = self.client.annotate2( positional_args[0], revision_start=start_revision, revision_end=end_revision ) self.printNotifyMessages() for line in all_lines: print( '%d| r%d | %s' % (line['number']+1 ,line['revision'].number ,line['line']) ) if line['merged_revision'] is not None: print( ' Merged from r%d %s' % (line['merged_revision'] ,line['merged_path']) ) cmd_ann2 = cmd_annotate2 def cmd_cat( self, args ): revision = args.getOptionalRevision( '--revision', 'head' ) text = self.client.cat( args.getPositionalArgs( 1, 1 )[0], revision=revision ) print( text.decode( 'utf-8' ).replace( '\r\n', '\n' ) ) def cmd_checkout( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( os.path.basename( positional_args[0] ) ) self.revision_update_complete = None self.client.checkout( positional_args[0], positional_args[1], recurse=recurse ) self.printNotifyMessages() if self.revision_update_complete is not None: print( 'Checked out revision %s' % self.revision_update_complete.number ) else: print( 'Checked out unknown revision - checkout failed?' ) cmd_co = cmd_checkout def cmd_cleanup( self, args ): positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) self.client.cleanup( positional_args[0] ) def cmd_checkin( self, args ): msg = args.getOptionalValue( '--message', '' ) recurse = args.getBooleanOption( '--non-recursive', False ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: positional_args.append( '.' ) if msg == '': msg = self.getLogMessage() commit_info = self.client.checkin( positional_args, msg, recurse=recurse ) rev = commit_info["revision"] self.printNotifyMessages() if commit_info['post_commit_err'] is not None: print( commit_info['post_commit_err'] ) if rev is None: print( 'Nothing to commit' ) elif rev.number > 0: print( 'Revision %s' % rev.number ) else: print( 'Commit failed' ) cmd_commit = cmd_checkin cmd_ci = cmd_checkin def cmd_copy( self, args ): positional_args = args.getPositionalArgs( 2, 2 ) self.client.copy( positional_args[0], positional_args[1] ) cmd_cp = cmd_copy def cmd_diff( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) revision1, revision2 = args.getOptionalRevisionPair( '--revision', 'base', 'working' ) return_bytes = args.getBooleanOption( '--return-bytes', True ) positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) if 'TEMP' in os.environ: tmpdir = os.environ['TEMP'] elif 'TMPDIR' in os.environ: tmpdir = os.environ['TMPDIR'] elif 'TMP' in os.environ: tmpdir = os.environ['TMP'] elif os.path.exists( '/usr/tmp' ): tmpdir = '/usr/tmp' elif os.path.exists( '/tmp' ): tmpdir = '/tmp' else: print( 'No tmp dir!' ) return self.debug( 'cmd_diff %r, %r, %r, %r, %r' % (tmpdir, positional_args[0], recurse, revision1, revision2) ) diff_text = self.client.diff( tmpdir, positional_args[0], recurse=recurse, revision1=revision1, revision2=revision2, diff_options=['-u'], return_bytes=return_bytes ) if return_bytes: for line in diff_text.split( b'\n' ): print(repr(line)) else: print( diff_text.replace( '\r\n', '\n' ) ) def cmd_export( self, args ): force = args.getBooleanOption( '--force', False ) revision_url = args.getOptionalRevision( '--revision', 'head' ) revision_wc = args.getOptionalRevision( '--revision', 'working' ) native_eol = args.getOptionalValue( '--native-eol', None ) positional_args = args.getPositionalArgs( 2, 2 ) if self.client.is_url( positional_args[0] ): revision = revision_url else: revision = revision_wc self.client.export( positional_args[0], positional_args[1], revision=revision, force=force, native_eol=native_eol ) def cmd_info( self, args ): positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) path = positional_args[0] entry = self.client.info( path ) print( 'Path: %s' % path ) if entry.name and entry.name != 'svn:this_dir': print( 'Name: %s' % entry.name ) if entry.url: print( 'Url: %s' % entry.url ) if entry.repos and self.pysvn_testing >= '01.03.00': print( 'Repository: %s' % entry.repos ) if entry.uuid: print( 'Repository UUID: %s' % entry.uuid ) if entry.revision.kind == pysvn.opt_revision_kind.number: print( 'Revision: %s' % entry.revision.number ) if entry.kind == pysvn.node_kind.file: print( 'Node kind: file' ) elif entry.kind == pysvn.node_kind.dir: print( 'Node kind: directory' ) elif entry.kind == pysvn.node_kind.none: print( 'Node kind: none' ) else: print( 'Node kind: unknown' ) if entry.schedule == pysvn.wc_schedule.normal: print( "Schedule: normal" ) elif entry.schedule == pysvn.wc_schedule.add: print( "Schedule: add" ) elif entry.schedule == pysvn.wc_schedule.delete: print( "Schedule: delete" ) elif entry.schedule == pysvn.wc_schedule.replace: print( "Schedule: replace" ) if entry.is_copied: if entry.copyfrom_url: print( 'Copied From URL: %s' % entry.copyfrom_url ) if entry.copyfrom_rev.number: print( 'Copied From Rev: %s' % entry.copyfrom_rev.number ) if entry.commit_author: print( 'Last Changed Author: %s' % entry.commit_author ) if entry.commit_revision.number: print( 'Last Changed Rev: %s' % entry.commit_revision.number ) if entry.commit_time: print( 'Last Changed Date: %s' % fmtDateTime( entry.commit_time ) ) if entry.text_time: print( 'Text Last Updated: %s' % fmtDateTime( entry.text_time ) ) if entry.properties_time and self.pysvn_testing == '99.99.99': print( 'Properties Last Updated: %s' % fmtDateTime( entry.properties_time ) ) if entry.checksum: print( 'Checksum: %s' % entry.checksum ) def cmd_info2( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision_url = args.getOptionalRevision( '--revision', 'head' ) revision_path = args.getOptionalRevision( '--revision', 'unspecified' ) positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) path = positional_args[0] if self.client.is_url( path ): revision = revision_url else: revision = revision_path all_entries = self.client.info2( path, revision=revision, recurse=recurse ) for path, info in all_entries: print('') print( 'Path: %s' % path ) if info.URL: print( 'Url: %s' % info.URL ) if info.rev: print( 'Revision: %s' % info.rev.number ) if info.repos_root_URL and self.pysvn_testing >= '01.03.00': print( 'Repository root_URL: %s' % info.repos_root_URL ) if info.repos_UUID: print( 'Repository UUID: %s' % info.repos_UUID ) if info.last_changed_author: print( 'Last changed author: %s' % info.last_changed_author ) if info.last_changed_date: print( 'Last Changed Date: %s' % fmtDateTime( info.last_changed_date ) ) if info.last_changed_rev.kind == pysvn.opt_revision_kind.number: print( 'Last changed revision: %s' % info.last_changed_rev.number ) if info.kind == pysvn.node_kind.file: print( 'Node kind: file' ) elif info.kind == pysvn.node_kind.dir: print( 'Node kind: directory' ) elif info.kind == pysvn.node_kind.none: print( 'Node kind: none' ) else: print( 'Node kind: unknown' ) if info.lock: print( 'Lock Owner: %s' % info.lock.owner ) print( 'Lock Creation Date: %s' % fmtDateTime( info.lock.creation_date ) ) if info.lock.expiration_date is not None: print( 'Lock Expiration Date: %s' % fmtDateTime( info.lock.expiration_date ) ) print( 'Lock Token: %s' % info.lock.token ) print( 'Lock Comment:' ) if info.lock.comment not in ['', None]: print( info.lock.comment ) if info.wc_info: wc_info = info.wc_info if wc_info.schedule == pysvn.wc_schedule.normal: print( "Schedule: normal" ) elif wc_info.schedule == pysvn.wc_schedule.add: print( "Schedule: add" ) elif wc_info.schedule == pysvn.wc_schedule.delete: print( "Schedule: delete" ) elif wc_info.schedule == pysvn.wc_schedule.replace: print( "Schedule: replace" ) if wc_info.copyfrom_url: print( 'Copied From URL: %s' % wc_info.copyfrom_url ) print( 'Copied From Rev: %s' % wc_info.copyfrom_rev.number ) if wc_info.text_time: print( 'Text Last Updated: %s' % fmtDateTime( wc_info.text_time ) ) if wc_info.prop_time and self.pysvn_testing == '99.99.99': print( 'Properties Last Updated: %s' % fmtDateTime( wc_info.prop_time ) ) if wc_info.checksum: print( 'Checksum: %s' % wc_info.checksum ) def cmd_import( self, args ): msg = args.getOptionalValue( '--message', '' ) recurse = args.getBooleanOption( '--non-recursive', False ) positional_args = args.getPositionalArgs( 2, 2 ) self.client.import_( positional_args[0], positional_args[1], msg, recurse=recurse ) def cmd_lock( self, args ): msg = args.getOptionalValue( '--message', '' ) force = args.getBooleanOption( '--force', True ) positional_args = args.getPositionalArgs( 1, 1 ) self.client.lock( positional_args[0], msg, force ); def cmd_log( self, args ): start_revision, end_revision = args.getOptionalRevisionPair( '--revision', 'head', '0' ) limit = args.getOptionalValue( '--limit', 0 ) verbose = args.getBooleanOption( '--verbose', True ) positional_args = args.getPositionalArgs( 1, 1 ) all_logs = self.client.log( positional_args[0], revision_start=start_revision, revision_end=end_revision, discover_changed_paths=verbose, limit=limit ) for log in all_logs: print( '-'*60 ) print( 'rev %d: %s | %s | %d lines' % (log.revision.number ,log.author ,fmtDateTime( log.date ) ,len( log.message.split('\n') )) ) if len( log.changed_paths ) > 0: print( 'Changed paths:' ) for change_info in log.changed_paths: if change_info.copyfrom_path is None: print( ' %s %s' % (change_info.action, change_info.path) ) else: print( ' %s %s (from %s:%d)' % (change_info.action ,change_info.path ,change_info.copyfrom_path ,change_info.copyfrom_revision.number) ) print( log.message ) print( '-'*60 ) def cmd_ls( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'head' ) verbose = args.getBooleanOption( '--verbose', True ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: positional_args.append( '.' ) for arg in positional_args: all_entries = self.client.ls( arg, revision=revision, recurse=recurse ) all_entries.sort( key=self.__sortKeyLsList ) if verbose: for entry in all_entries: args = {} args.update( entry ) args['time_str'] = fmtDateTime( entry.time ) args['created_rev_num'] = entry.created_rev.number if args['size'] is None: args['size'] = '-' else: args['size'] = '%d' % (args['size'],) print( '%(created_rev_num)7d %(last_author)-10s %(size)6s %(time_str)s %(name)s' % args ) else: for entry in all_entries: print( '%(name)s' % entry ) def __sortKeyLsList( self, entry ): return entry['name'] def cmd_list( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'head' ) verbose = args.getBooleanOption( '--verbose', True ) fetch_locks = args.getBooleanOption( '--fetch-locks', True ) include_externals = args.getBooleanOption( '--include-externals', True ) search_pattern = args.getOptionalValue( '--search', None ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: positional_args.append( '.' ) for arg in positional_args: if self.pysvn_testing >= '01.10.00': all_entries = self.client.list( arg, revision=revision, recurse=recurse, fetch_locks=fetch_locks, include_externals=include_externals, patterns=search_pattern ) elif self.pysvn_testing >= '01.08.00': all_entries = self.client.list( arg, revision=revision, recurse=recurse, fetch_locks=fetch_locks, include_externals=include_externals ) else: all_entries = self.client.list( arg, revision=revision, recurse=recurse, fetch_locks=fetch_locks ) if verbose: for entry_tuple in all_entries: entry = entry_tuple[0] lock_info = entry_tuple[1] args = {} args.update( entry ) args['time_str'] = fmtDateTime( entry.time ) args['created_rev_num'] = entry.created_rev.number if args['size'] is None: args['size'] = '-' else: args['size'] = '%d' % (args['size'],) print( '%(created_rev_num)7d %(last_author)-10s %(size)6s %(time_str)s %(path)s' % args ) if lock_info is not None: print( ' Lock owner: %s' % (lock_info.owner,) ) print( ' Lock comment: %s' % (lock_info.comment,) ) if lock_info.creation_date is not None: print( ' Lock created: %s' % (time.strftime( '%Y-%m-%d %H:%M:%S', time.localtime( lock_info.creation_date ) ),) ) if lock_info.expiration_date is not None: print( ' Lock expires: %s' % (time.strftime( '%Y-%m-%d %H:%M:%S', time.localtime( lock_info.expiration_date ) ),) ) if self.pysvn_testing >= '01.08.00' and include_externals and entry_tuple[2] is not None: print( ' External target %s' % (entry_tuple[3],) ) print( ' External URL %s' % (entry_tuple[2],) ) else: for entry_tuple in all_entries: print( '%(path)s' % entry_tuple[0] ) def cmd_merge( self, args ): recurse = args.getBooleanOption( '--recursive', True ) dry_run = args.getBooleanOption( '--dry-run', False ) notice_ancestry = args.getBooleanOption( '--notice-ancestry', False ) # need to figure out which variaty of the merge command this is if args.haveOption( '--revision' ): # its merge -r N:M SOURCE [WCPATH] revision1, revision2 = args.getMandatoryRevisionPair( '--revision' ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) path1 = positional_args[0] path2 = positional_args[0] wcpath = positional_args[1] else: # its merge sourceURL1[@N] sourceURL2[@M] [WCPATH] positional_args = args.getPositionalArgs( 2, 3 ) if len(positional_args) == 2: positional_args.append( '.' ) path1, rev1 = self.parsePathWithRevision( positional_args[0] ) path2, rev2 = self.parsePathWithRevision( positional_args[1] ) wcpath = positional_args[2] self.client.merge( path1, revision1, path2, revision2, wcpath, recurse=recurse, dry_run=dry_run, notice_ancestry=notice_ancestry ) def cmd_mkdir( self, args ): if args.haveOption( '--message' ): msg = args.getOptionalValue( '--message', '' ) if msg == '': msg = self.getLogMessage() else: msg = '' self.client.mkdir( args.getPositionalArgs( 1, 1 )[0], msg ) def cmd_move( self, args ): positional_args = args.getPositionalArgs( 2, 2 ) self.client.move( positional_args[0], positional_args[1] ) cmd_mv = cmd_move def cmd_patch( self, args ): dry_run = args.getBooleanOption( '--dry-run', True ) reverse = args.getBooleanOption( '--reverse', True ) ignore_whitespace = args.getBooleanOption( '--ignore-whitespace', True ) remove_tempfiles = not args.getBooleanOption( '--no-remove-tempfiles', True ) patch_path, wc_dir_path = args.getPositionalArgs( 2, 2 ) abs_patch_path = os.path.abspath( patch_path ) abs_wc_dir_path = os.path.abspath( wc_dir_path ) self.client.patch( abs_patch_path, abs_wc_dir_path, dry_run=dry_run, reverse=reverse, ignore_whitespace=ignore_whitespace, remove_tempfiles=remove_tempfiles ) def key_props_by_path( self, a ): return a[0] def cmd_proplist( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'working' ) verbose = args.getBooleanOption( '--verbose', True ) positional_args = args.getPositionalArgs( 0, 0 ) if len(positional_args) == 0: positional_args.append( '.' ) for arg in positional_args: if self.client.is_url( arg ): revision = args.getOptionalRevision( '--revision', 'head' ) all_props = self.client.proplist( arg, revision=revision, recurse=recurse ) all_props.sort( key=self.key_props_by_path ) for path, props in all_props: print( "Properties on '%s':" % path ) prop_names = sorted( props.keys() ) for name in prop_names: if verbose: print( ' %s: %s' % (name, props[name]) ) else: print( ' %s' % name ) cmd_pl = cmd_proplist def cmd_propget( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'working' ) if self.pysvn_testing >= '01.08.00' and args.getBooleanOption( '--show-inherited-props' ): get_inherited_props = True else: get_inherited_props = False positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) if self.client.is_url( positional_args[0] ): revision = args.getOptionalRevision( '--revision', 'head' ) if get_inherited_props: props, inherited_props = self.client.propget( positional_args[0], positional_args[1], revision=revision, recurse=recurse, get_inherited_props=True ) else: props = self.client.propget( positional_args[0], positional_args[1], revision=revision, recurse=recurse ) inherited_props = {} prop_names = sorted( props.keys() ) for name in prop_names: print( '%s: %s' % (name, props[name]) ) if len(inherited_props) > 0: print( 'Inherited props' ) prop_names = sorted( inherited_props.keys() ) for name in prop_names: print( '%s: %s' % (name, inherited_props[name]) ) cmd_pg = cmd_propget def cmd_propset( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'working' ) positional_args = args.getPositionalArgs( 2, 3 ) if len(positional_args) == 2: positional_args.append( '.' ) if self.client.is_url( positional_args[0] ): revision = args.getOptionalRevision( '--revision', 'head' ) self.client.propset( positional_args[0], positional_args[1], positional_args[2], revision=revision, recurse=recurse ) cmd_ps = cmd_propset def cmd_propdel( self, args ): recurse = args.getBooleanOption( '--recursive', True ) revision = args.getOptionalRevision( '--revision', 'working' ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) if self.client.is_url( positional_args[0] ): revision = args.getOptionalRevision( '--revision', 'head' ) self.client.propdel( positional_args[0], positional_args[1], revision=revision, recurse=recurse ) cmd_pd = cmd_propdel def cmd_propset_local( self, args ): skip_checks = args.getBooleanOption( '--skip-checks', True ) changelist = args.getOptionalValue( '--change-list', None ) positional_args = args.getPositionalArgs( 3, 3 ) if changelist is not None: changelist = [s.strip() for s in changelist.split(',')] self.client.propset_local( positional_args[0], positional_args[1], positional_args[2], skip_checks=skip_checks, changelist=changelist ) else: self.client.propset_local( positional_args[0], positional_args[1], positional_args[2], skip_checks=skip_checks ) def cmd_propdel_local( self, args ): changelist = args.getOptionalValue( '--change-list', None ) positional_args = args.getPositionalArgs( 2, 2 ) if changelist is not None: changelist = [s.strip() for s in changelist.split(',')] self.client.propdel_local( positional_args[0], positional_args[1], changelist=changelist ) else: self.client.propdel_local( positional_args[0], positional_args[1] ) def cmd_propset_remote( self, args ): self.next_log_message = args.getOptionalValue( '--message', None ) skip_checks = args.getBooleanOption( '--skip-checks', True ) revision = args.getOptionalRevision( '--revision', '0' ) positional_args = args.getPositionalArgs( 3, 3 ) if args.haveOption( '--revision' ): self.client.propset_remote( positional_args[0], positional_args[1], positional_args[2], skip_checks=skip_checks, base_revision_for_url=revision ) else: self.client.propset_remote( positional_args[0], positional_args[1], positional_args[2], skip_checks=skip_checks ) def cmd_propdel_remote( self, args ): self.next_log_message = args.getOptionalValue( '--message', None ) revision = args.getOptionalRevision( '--revision', '0' ) positional_args = args.getPositionalArgs( 2, 2 ) self.client.propdel_remote( positional_args[0], positional_args[1], base_revision_for_url=revision ) def cmd_revproplist( self, args ): revision = args.getOptionalRevision( '--revision', 'head' ) verbose = args.getBooleanOption( '--verbose', False ) positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) rev, prop_dict = self.client.revproplist( positional_args[0], revision=revision ) print( 'Revision: %s' % rev.number ) prop_keys = prop_dict.keys() for key in sorted( prop_keys ): print( '%s: %s' % (key, prop_dict[ key ]) ) cmd_rpl = cmd_revproplist def cmd_revpropget( self, args ): revision = args.getOptionalRevision( '--revision', 'head' ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) rev, value = self.client.revpropget( positional_args[0], positional_args[1], revision=revision ) print( 'Revision: %s' % rev.number ) print( '%s: %s' % (positional_args[0], value) ) cmd_rpg = cmd_revpropget def cmd_revpropset( self, args ): force = args.getBooleanOption( '--force', False ) revision = args.getOptionalRevision( '--revision', 'head' ) positional_args = args.getPositionalArgs( 2, 3 ) if len(positional_args) == 2: positional_args.append( '.' ) rev = self.client.revpropset( positional_args[0], positional_args[1], positional_args[2], revision=revision, force=force ) cmd_rps = cmd_revpropset def cmd_revpropdel( self, args ): force = args.getBooleanOption( '--force', False ) revision = args.getOptionalRevision( '--revision', 'head' ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) self.client.revpropdel( positional_args[0], positional_args[1], revision=revision, force=force ) cmd_rpd = cmd_revpropdel def cmd_remove( self, args ): force = args.getBooleanOption( '--force', True ) positional_args = args.getPositionalArgs( 1, 0 ) self.client.remove( positional_args, force=force ) cmd_rm = cmd_remove def cmd_remove_from_changelists( self, args ): if not hasattr( self.client, remove_from_changelists ): print( 'Error: remove_from_changelists is not supported by this version of Subversion' ) return path = args.getPositionalArgs( 1, 1 )[0] self.client.remove_from_changelists( path ) def cmd_resolved( self, args ): recurse = args.getBooleanOption( '--recursive', True ) positional_args = args.getPositionalArgs( 1, 1 ) self.client.resolved( positional_args[0], recurse=recurse ) def cmd_revert( self, args ): recurse = args.getBooleanOption( '--recursive', True ) positional_args = args.getPositionalArgs( 1, 1 ) self.client.revert( positional_args[0], recurse=recurse ) def key_by_path( self, a ): return a.path def cmd_status( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) verbose = args.getBooleanOption( '--verbose', True ) quiet = args.getBooleanOption( '--quiet', True ) ignore = args.getBooleanOption( '--no-ignore', False ) update = args.getBooleanOption( '--show-updates', True ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: all_entries = self.client.status( '', recurse=recurse, get_all=verbose, ignore=ignore, update=update ) self._cmd_status_print( all_entries, verbose, update, ignore, quiet ) else: for arg in positional_args: all_entries = self.client.status( arg, recurse=recurse, get_all=verbose, ignore=ignore, update=update ) self._cmd_status_print( all_entries, verbose, update, ignore, quiet ) def _cmd_status_print( self, all_entries, detailed, update, ignore, quiet ): all_entries.sort( key=self.key_by_path ) for entry in all_entries: if entry.text_status == pysvn.wc_status_kind.ignored and ignore: continue if entry.text_status == pysvn.wc_status_kind.unversioned and quiet: continue state = '%s%s%s%s%s' % (wc_status_kind_map[ entry.text_status ], wc_status_kind_map[ entry.prop_status ], ' L'[ entry.is_locked ], ' +'[ entry.is_copied ], ' S'[ entry.is_switched ]) if( entry.repos_text_status != pysvn.wc_status_kind.none or entry.repos_prop_status != pysvn.wc_status_kind.none ): odd_status = '%s%s' % (wc_status_kind_map[ entry.repos_text_status ], wc_status_kind_map[ entry.repos_prop_status ]) else: odd_status = ' ' lock_state = ' ' if entry.entry is not None and hasattr( entry.entry, 'lock_token' ): if entry.entry.lock_token is not None: lock_state = 'K' if hasattr( entry, 'repos_lock' ) and entry.repos_lock is not None: lock_state = 'O' if entry.entry is not None and detailed: print( '%s%s %s %6d %6d %-14s %s' % (state, lock_state, odd_status, entry.entry.revision.number, entry.entry.commit_revision.number, entry.entry.commit_author, entry.path) ) elif detailed: print( '%s%s %s %6s %6s %-14s %s' % (state, lock_state, odd_status, '', '', '', entry.path) ) elif update: print( '%s%s %s %s' % (state, lock_state, odd_status, entry.path) ) else: if( entry.text_status != pysvn.wc_status_kind.normal or entry.prop_status != pysvn.wc_status_kind.normal or lock_state.strip() != ''): print( '%s%s %s' % (state, lock_state, entry.path) ) cmd_st = cmd_status cmd_stat = cmd_status def cmd_status2( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) verbose = args.getBooleanOption( '--verbose', True ) quiet = args.getBooleanOption( '--quiet', True ) ignore = args.getBooleanOption( '--no-ignore', False ) update = args.getBooleanOption( '--show-updates', True ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: all_entries = self.client.status2( '', recurse=recurse, get_all=verbose, ignore=ignore, update=update ) self._cmd_status2_print( all_entries, verbose, update, ignore, quiet ) else: for arg in positional_args: all_entries = self.client.status2( arg, recurse=recurse, get_all=verbose, ignore=ignore, update=update ) self._cmd_status2_print( all_entries, verbose, update, ignore, quiet ) def _cmd_status2_print( self, all_entries, detailed, update, ignore, quiet ): all_entries.sort( key=self.key_by_path ) for entry in all_entries: if entry.text_status == pysvn.wc_status_kind.ignored and ignore: continue if entry.text_status == pysvn.wc_status_kind.unversioned and quiet: continue if entry.text_status == pysvn.wc_status_kind.none and quiet: continue if entry.text_status == pysvn.wc_status_kind.none: text_status = '?' else: text_status = wc_status_kind_map[ entry.text_status ] state = '%s%s%s%s%s' % (text_status, wc_status_kind_map[ entry.prop_status ], ' L'[ entry.wc_is_locked ], ' +'[ entry.is_copied ], ' S'[ entry.is_switched ]) if( entry.repos_text_status != pysvn.wc_status_kind.none or entry.repos_prop_status != pysvn.wc_status_kind.none ): odd_status = '%s%s' % (wc_status_kind_map[ entry.repos_text_status ], wc_status_kind_map[ entry.repos_prop_status ]) else: odd_status = ' ' lock_state = ' ' if entry.lock is not None and entry.lock.token is not None: lock_state = 'K' if entry.repos_lock is not None: lock_state = 'O' # convert from abs to rel path cwd = os.getcwd() if entry.path == cwd: path = '.' elif entry.path.startswith( cwd + '/' ): path = entry.path[len(cwd)+1:] else: path = entry.path if detailed and entry.is_versioned: print( '%s%s %s %6d %6d %-14s %s' % (state, lock_state, odd_status, entry.revision.number, entry.changed_revision.number, entry.changed_author, path) ) elif detailed: print( '%s%s %s %6s %6s %-14s %s' % (state, lock_state, odd_status, '', '', '', path) ) elif update: print( '%s%s %s %s' % (state, lock_state, odd_status, path) ) else: if( entry.text_status != pysvn.wc_status_kind.normal or entry.prop_status != pysvn.wc_status_kind.normal or lock_state.strip() != ''): print( '%s%s %s' % (state, lock_state, path) ) def cmd_switch( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) revision = args.getOptionalRevision( '--revision', 'head' ) positional_args = args.getPositionalArgs( 1, 2 ) if len(positional_args) == 1: positional_args.append( '.' ) self.client.switch( positional_args[0], positional_args[1], recurse=recurse, revision=revision ) def cmd_relocate( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) positional_args = args.getPositionalArgs( 2, 3 ) if len(positional_args) == 2: positional_args.append( '.' ) self.client.relocate( positional_args[0], positional_args[1], positional_args[2], recurse=recurse ) def cmd_unlock( self, args ): force = args.getBooleanOption( '--force', False ) positional_args = args.getPositionalArgs( 1, 1 ) self.client.unlock( positional_args[0], force ); def cmd_update( self, args ): recurse = args.getBooleanOption( '--non-recursive', False ) positional_args = args.getPositionalArgs( 0 ) if len(positional_args) == 0: positional_args.append( '.' ) rev_list = self.client.update( positional_args[0], recurse=recurse ) self.printNotifyMessages() if type(rev_list) == type([]) and len(rev_list) != 1: print( 'rev_list = %r' % [rev.number for rev in rev_list] ) if self.revision_update_complete is not None: print( 'Updated to revision %s' % self.revision_update_complete.number ) else: print( 'Updated to unknown revision - update failed?' ) cmd_up = cmd_update def cmd_vacuum( self, args ): remove_unversioned_items = args.getBooleanOption( '--remove-unversioned-items', True ) remove_ignored_items = args.getBooleanOption( '--remove-ignored-items', True ) fix_recorded_timestamps = args.getBooleanOption( '--fix-recorded-timestamps', True ) vacuum_pristines = args.getBooleanOption( '--vacuum-pristines', True ) include_externals = args.getBooleanOption( '--include-externals', True ) positional_args = args.getPositionalArgs( 0, 1 ) if len(positional_args) == 0: positional_args.append( '.' ) self.client.vacuum( positional_args[0], remove_unversioned_items=remove_unversioned_items, remove_ignored_items=remove_ignored_items, fix_recorded_timestamps=fix_recorded_timestamps, vacuum_pristines=vacuum_pristines, include_externals=include_externals ) def cmd_help( self, args ): print( 'Version: pysvn %d.%d.%d-%d' % pysvn.version,'svn %d.%d.%d-%s' % pysvn.svn_version ) valid_cmd_names = [name for name in SvnCommand.__dict__.keys() if name.find('cmd_') == 0] valid_cmd_names.sort() print( 'Available subcommands:' ) index = 0 line = '' for name in valid_cmd_names: line = line + (' %-12s' % name[4:]) if index % 4 == 3: print( line ) line = '' index += 1 # key is long option name, value is 1 if need next arg as value long_opt_info = { # svn_cmd.py control '--pause': 0, '--pysvn-testing': 1, # modify behaviour to assist testing pysvn '--debug': 0, # do debug stuff # command options '--auto-props': 0, # enable automatic properties '--change-list': 1, # changelist '--config-dir': 1, # read user configuration files from directory ARG '--diff-cmd': 1, # use ARG as diff command '--diff3-cmd': 1, # use ARG as merge command '--dry-run': 0, # try operation but make no changes '--editor-cmd': 1, # use ARG as external editor '--encoding': 1, # treat value as being in charset encoding ARG '--extensions': 1, # pass ARG as bundled options to GNU diff '--fetch-locks': 0, # as list to fetch lock info '--file': 1, # read data from file ARG '--fix-recorded-timestamps': 0, '--force': 0, # force operation to run '--force-log': 0, # force validity of log message source '--include-externals': 0, '--include-externals': 0, # include external information in list() output '--incremental': 0, # give output suitable for concatenation '--limit': 1, # number of logs to fetch '--message': 1, # specify commit message ARG '--native-eol': 1, # native eol ARG '--new': 1, # use ARG as the newer target '--no-auth-cache': 0, # do not cache authentication tokens '--no-auto-props': 0, # disable automatic properties '--no-diff-deleted': 0, # do not print differences for deleted files '--no-ignore': 0, # disregard default and svn:ignore property ignores '--no-remove-tempfiles': 0, # do not remove temp files '--non-interactive': 0, # do no interactive prompting '--non-recursive': 0, # operate on single directory only '--notice-ancestry': 0, # notice ancestry when calculating differences '--old': 1, # use ARG as the older target '--password': 1, # specify a password ARG '--quiet': 0, # print as little as possible '--recursive': 0, # descend recursively '--relocate': 0, # relocate via URL-rewriting '--remove-ignored-items': 0, '--remove-unversioned-items': 0, '--return-bytes': 0, '--revision': 1, # revision X or X:Y range. X or Y can be one of: '--revprop': 0, # operate on a revision property (use with -r) '--search': 2, # search for pattern '--show-inherited-props': 0, # show inherited props '--show-updates': 0, # display update information '--skip-checks': 0, # skip-checks '--strict': 0, # use strict semantics '--targets': 1, # pass contents of file ARG as additional args '--username': 1, # specify a username ARG '--vacuum-pristines': 0, '--verbose': 0, # print extra information '--version': 0, # print client version info '--xml': 0, # output in xml } # map short name to long short_opt_info = { '-F': '--file', '-N': '--non-recursive', '-R': '--recursive', '-m': '--message', '-q': '--quiet', '-r': '--revision', '-u': '--show-updates', '-v': '--verbose', '-x': '--extensions', } # # Usage: # Construct with a commnad list # call getCommandName() # call getBooleanOption() and getOptionalValue() as needed # finally call getPositionalArgs() # # class SvnArguments: def __init__( self, all_args ): self.positional_args = [] self.named_options = {} self.used_named_options = {} need_next_arg = 0 name = '' for arg in all_args: if need_next_arg > 1: self.named_options.setdefault( name, [] ).append( arg ) need_next_arg = 0 elif need_next_arg: self.named_options[ name ] = arg need_next_arg = 0 elif self._isOption( arg ): name, need_next_arg = self._optionInfo( arg ) if not need_next_arg: self.named_options[ name ] = None else: expanded_arg = glob.glob( arg ) if len(expanded_arg) > 0: self.positional_args.extend( expanded_arg ) else: self.positional_args.append( arg ) if need_next_arg: raise CommandError( 'Missing arg to option %s' % name ) def _isOption( self, arg ): return arg[0] == '-' def _optionInfo( self, opt ): # return long_name, arg_needed long_opt = short_opt_info.get( opt, opt ) if long_opt in long_opt_info: return long_opt, long_opt_info[ long_opt ] raise CommandError( 'unknown option %s' % opt ) def _checkOptionsUsed( self ): # check all options have been used for opt_name in self.named_options.keys(): if opt_name not in self.used_named_options: raise CommandError( 'unused option %s' % opt_name ) def parsePathWithRevision( self, path_rev, default_rev ): if '@' in path_rev: path = path_rev[:path_rev.find('@')] rev = self._parseRevisionArg( path_rev[path_rev.find('@')+1:] ) else: path = path_rev rev = self._parseRevisionArg( default_rev ) return path, rev def _parseRevisionArg( self, rev_string ): if rev_string.lower() == 'base': return pysvn.Revision( pysvn.opt_revision_kind.base ) if rev_string.lower() == 'head': return pysvn.Revision( pysvn.opt_revision_kind.head ) if rev_string.lower() == 'working': return pysvn.Revision( pysvn.opt_revision_kind.working ) if rev_string.lower() == 'committed': return pysvn.Revision( pysvn.opt_revision_kind.committed ) if rev_string.lower() == 'prev': return pysvn.Revision( pysvn.opt_revision_kind.prev ) if rev_string.lower() == 'unspecified': return pysvn.Revision( pysvn.opt_revision_kind.unspecified ) if rev_string[0] == '{' and rev_string[-1] == '}': try: date = parse_datetime.parse_time( rev_string[1:-2] ) return pysvn.Revision( pysvn.opt_revision_kind.date, date ) except parse_datetime.DateTimeSyntaxError as e: raise CommandError( e.reason() ) # either a rev number or a date try: return pysvn.Revision( pysvn.opt_revision_kind.number, int(rev_string) ) except ValueError: pass raise CommandError( 'Cannot parse %s as a revision value' % rev_string ) def _splitRevisionString( self, rev_string ): # split the string at the first : that is not inside a {} pair if rev_string[0] == '{': # the : may be after the closing } close_paren_index = rev_string.find( '}' ) if close_paren_index == -1: # error leave to others to report return [rev_string] if close_paren_index == len(rev_string ): # its just one revision return [rev_string] if rev_string[close_paren_index+1] == ':': return [rev_string[:close_paren_index+1], rev_string[close_paren_index+2:]] # another error case return [rev_string] else: return rev_string.split(':',1) def getCommandName( self, default_command ): if len(self.positional_args) > 0: return self.positional_args.pop( 0 ) else: return default_command def haveOption( self, opt_name ): return opt_name in self.named_options def getBooleanOption( self, opt_name, present_value=True ): if opt_name in self.named_options: self.used_named_options[ opt_name ] = None return present_value else: return not present_value def getOptionalValue( self, opt_name, default ): if opt_name in self.named_options: self.used_named_options[ opt_name ] = None return self.named_options[ opt_name ] else: return default def getOptionalRevision( self, opt_name, start_default ): if opt_name in self.named_options: self.used_named_options[ opt_name ] = None rev_string = self.named_options[ opt_name ] return self._parseRevisionArg( rev_string ) else: return self._parseRevisionArg( start_default ) def getMandatoryRevisionPair( self, opt_name ): # parse a M:N or M as revision pair if opt_name not in self.named_options: raise CommandError( 'mandatory %s required' % opt_name ) self.used_named_options[ opt_name ] = None rev_strings = self._splitRevisionString( self.named_options[ opt_name ] ) if len(rev_strings) == 1: raise CommandError( 'mandatory %s requires a pair of revisions' % opt_name ) return [self._parseRevisionArg( rev_strings[0] ), self._parseRevisionArg( rev_strings[1] )] def getOptionalRevisionPair( self, opt_name, start_default, end_default=None ): # parse a M:N or M as revision pair if opt_name in self.named_options: self.used_named_options[ opt_name ] = None rev_strings = self._splitRevisionString( self.named_options[ opt_name ] ) if len(rev_strings) == 1: if end_default is None: # M means M:M rev_strings.append( rev_strings[0] ) else: # M means M:end_default rev_strings.append( end_default ) return [self._parseRevisionArg( rev_strings[0] ), self._parseRevisionArg( rev_strings[1] )] else: return (self._parseRevisionArg( start_default ), self._parseRevisionArg( end_default )) def getPositionalArgs( self, min_args, max_args=0 ): # check min and max then return the list if len(self.positional_args) < min_args: raise CommandError( 'too few arguments - need at least %d' % min_args ) if max_args != 0 and len(self.positional_args) > max_args: raise CommandError( 'too many arguments - need no more then %d' % max_args ) # as this is the last call on the args object we check the option where all used self._checkOptionsUsed() return self.positional_args if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Examples/Client/parse_datetime.py000644 000765 000024 00000030112 11654776730 021617 0ustar00barrystaff000000 000000 ''' ==================================================================== Copyright (c) 2003-2009 Barry A Scott. All rights reserved. This software is licensed as described in the file LICENSE.txt, which you should have received as part of this distribution. ==================================================================== ''' _debug_parse_time = 0 class DateTimeSyntaxError( Exception ): def __init__( self, reason ): Exception.__init__( self ) self._reason = reason def reason( self ): return self._reason def __str__( self ): return self._reason class DateSyntaxError( DateTimeSyntaxError ): def __init__( self, reason ): DateTimeSyntaxError.__init__( self, reason ) class TimeSyntaxError( DateTimeSyntaxError ): def __init__( self, reason ): DateTimeSyntaxError.__init__( self, reason ) def parse_time( time_string ): """parse_time( time_string ) returns the UTC time represented by time_string british locale defaults used formats understood for a date are: dayname - today, yesterday, monday, tuesday... dd/mm/yy[yy] - numeric date dd-mmm-yy[yy] - month as jan,feb,etc... n units - n units of time ago where units are: seconds minutes hours days weeks months years formats understood for time are: HH:MM - absolute time in hours and minutes HH:MM:SS - absolute time in hours, minutes and seconds formats understood for data and time are: adate atime - absolute date followed by absolute time rdate atime - relative date followed by absolute time atime adate - absolute time followed by absolute date atime rdate - absolute time followed by relative date """ if _debug_parse_time: print( '* parse_time: time_string=',time_string ) date = DateConversions() have_date = 0 have_time = 0 table = string.maketrans("-/"," ") time_list = string.split( string.translate( time_string, table ) ) try: day_time = convert_time( time_list[0] ) time_list = time_list[1:] if _debug_parse_time: print( '* parse_time: Time_list[0] is a time' ) except TimeSyntaxError: try: day_time = convert_time( time_list[-1] ) time_list = time_list[:-1] if _debug_parse_time: print( '* parse_time: Time_list[-1] is a time' ) except TimeSyntaxError: day_time = 0 if len(time_list) == 0: # default to today at time result = date.midnight + day_time if _debug_parse_time: print( '* parse_time: 1 return',format_time(result) ) return result match_type = date.numeric_type matches = [] for word in time_list: day_matches = date.findMatchingDateName( word ) if len(day_matches) == 0: raise DateSyntaxError( "%s unknown date word" % word ) if date.isAmbiguous( day_matches ): raise DateSyntaxError( date.reportAmbiguity( word, day_matches ) ) this_type = date.typeOfMatch( day_matches ) if this_type != date.numeric_type: if match_type == date.numeric_type: match_type = this_type elif match_type != this_type: raise DateSyntaxError( "ambiguous mix of unit and month names" ) matches.append( day_matches[0] ) if _debug_parse_time: print( '* parse_time: matches=',matches ) if match_type == date.day_type: if len(matches) != 1: raise DateSyntaxError( "too many day words" ) day_matches = matches[0] result = date.convertDay( day_matches[2] ) + day_time if _debug_parse_time: print( '* parse_time: 2 return',format_time(result) ) return result if match_type == date.unit_type: # expect a set of pair of if _debug_parse_time >= 2: print( 'matches',matches ) if (len(matches)&1) == 1: raise DateSyntaxError( 'must have an even number parameters when using time units' ) time_offset = 0 for index in range( 0, len(matches), 2 ): value_tuple = matches[index] unit_tuple = matches[index+1] if value_tuple[1] != date.numeric_type: raise DateSyntaxError( 'Expecting a number of units' ) if unit_tuple[1] != date.unit_type: raise DateSyntaxError( 'Expecting a unit name' ) value = value_tuple[2] unit = unit_tuple[2] time_offset = time_offset + value*unit result = date.now - time_offset if _debug_parse_time: print( '* parse_time: 3 return',format_time(result) ) return result if match_type == date.month_type: # absolute date if len(matches) < 1 or len(matches) > 3: raise DateSyntaxError( 'too many date parts' ) day = -1 month = -1 year = -1 num_month_types = 0 for entry in matches: if date.isMonth( entry ): num_month_types = num_month_types + 1 if num_month_types != 1: raise DateSyntaxError( 'too many months in the date string' ) if date.isMonth( matches[0] ): month = matches[0][2] day = matches[1][2] if len(matches) == 3: year = matches[2][2] else: day = matches[0][2] if matches[1][1] != date.month_type: raise DateSyntaxError( 'expecting month as first or second part of date' ) month = matches[1][2] if len(matches) == 3: year = matches[2][2] seconds = day_time%60 minutes = (day_time/60)%60 hours = day_time/60/60 result = date.absDate( day, month, year, hours, minutes, seconds ) if _debug_parse_time: print( '* parse_time: 4 return',format_time(result) ) return result if match_type == date.numeric_type and len(matches) == 3: # assume its in locale order - which is assumed to be D M Y day = matches[0][2] month = matches[1][2] year = matches[2][2] seconds = day_time%60 minutes = (day_time/60)%60 hours = day_time/60/60 result = date.absDate( day, month, year, hours, minutes, seconds ) if _debug_parse_time: print( '* parse_time: 4 return',format_time(result) ) return result raise DateSyntaxError( 'cannot understand date and time string ' + time_string ) def convert_time( time_str ): time_list = string.split( time_str, ':' ) if len(time_list) < 2: # not a time - no ":" raise TimeSyntaxError( "Not a time" ) if len(time_list) > 3: raise TimeSyntaxError( "Too many time parts" ) hour = time_list[0] minute = time_list[1] second = '0' if len(time_list) > 2: second = time_list[2] try: hour = string.atoi( hour ) minute = string.atoi( minute ) second = string.atoi( second ) except: return -1 if( hour < 0 or hour > 23 ): raise TimeSyntaxError( "hour value of %d invalid" % hour ) if( minute < 0 or minute > 59 ): raise TimeSyntaxError( "minutes value of %d invalid" % hour ) if( second < 0 or second > 59 ): raise TimeSyntaxError( "seconds value of %d invalid" % hour ) day_time = (hour*60 + minute)*60 + second return day_time class DateConversions: seconds_in_one_day = 24*60*60 day_type = 1 month_type = 2 unit_type = 3 numeric_type = 4 date_names = [ # day names ('today', day_type, 0), ('yesterday', day_type, -1), ('monday', day_type, 1), ('tuesday', day_type, 2), ('wednesday', day_type, 3), ('thursday', day_type, 4), ('friday', day_type, 5), ('saturday', day_type, 6), ('sunday', day_type, 7), # month names ('january', month_type, 1), ('feburary', month_type, 2), ('march', month_type, 3), ('april', month_type, 4), ('may', month_type, 5), ('june', month_type, 6), ('july', month_type, 7), ('august', month_type, 8), ('september', month_type, 9), ('october', month_type, 10), ('november', month_type, 11), ('december', month_type, 12), # unit names ('seconds', unit_type, 1), ('minutes', unit_type, 60), ('hours', unit_type, 60*60), ('days', unit_type, 24*60*60.), ('weeks', unit_type, 7*24*60*60), ('months', unit_type, 30*24*60*60), ('years', unit_type, 365*24*60*60) ] def __init__( self ): self.now = time.time() self.year, self.month, self.day, self.hour, self.minute, self.second, self.weekday, self.julian, self.dst = time.localtime( self.now ) self.midnight = time.mktime( (self.year, self.month, self.day, 0, 0, 0, self.weekday, self.julian, self.dst) ) def convertDay( self, day_offset ): if day_offset == 0: # today return self.midnight elif day_offset == -1: # yesterday return self.midnight - self.seconds_in_one_day else: # day of week offset = day_offset - self.weekday - 1 # make sure its in the past if offset >= 0: offset = offset - 7 return self.midnight + offset*self.seconds_in_one_day def absDate( self, day, month, year, hour=0, minute=0, second=0 ): future_check = 0 if year < 0: year = self.year future_check = 1 elif year < 70: year = year + 2000 elif year < 100: year = year + 1900 try: date = time.mktime( (year, month, day, hour, minute, second, self.weekday, self.julian, -1) ) except OverflowError: raise DateSyntaxError( 'cannot convert date and time year=%d/month=%d/day=%d %d:%d:%d' % (year, month, day, hour, minute, second) ) if date > self.now and future_check: year = year - 1 try: date = time.mktime( (year, month, day, hour, minute, second, self.weekday, self.julian, -1) ) except OverflowError: raise DateSyntaxError( 'cannot convert date and time %d/%d/%d %d:%d:%d' % (year, month, day, hour, minute, second) ) return date def findMatchingDateName( self, name ): try: value = string.atoi( name ) return [(name, self.numeric_type, value )] except: pass matches = [] name_len = len(name) for entry in self.date_names: entry_name = entry[0] if len(entry_name) >= name_len and entry_name[0:name_len] == name: matches.append( entry ) return matches def typeOfMatch( self, matches ): return matches[0][1] def isAmbiguous( self, matches ): return len(matches) > 1 def isDay( self, matches ): return matches[1] == self.day_type def isMonth( self, matches ): return matches[1] == self.month_type def isUnit( self, matches ): return matches[1] == self.unit_type def isNumeric( self, matches ): return matches[1] == self.numeric_type def reportAmbiguity( self, name, tuples ): names = map( lambda t: t[0], tuples ) return "%s is ambiguous, it matches: %s" % (name, string.join( names, ', ' )) pysvn-1.9.22/Docs/pysvn_prog_ref.js000644 000765 000024 00000004155 12703732561 017551 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2006-2016 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // all_versions = new Array( 1001000, 1002000, 1003000, 1004000, 1005000, 1006000, 1007000, 1008000, 1009000 ) current_version = 1009000; change_style = "hilite"; function changeDisplay( version ) { current_version = version; style_string = "" if( change_style == "hilite" ) { span_style = ""; div_style = ""; } else { span_style = "display: inline"; div_style = "display: block"; } excluded_features = false; for( var i=0; i pysvn - Programmer's reference

    pysvn - Programmer's reference

    This programmer's reference gives complete and detailed infomation on the pysvn API.

    The pysvn Programmer's Guide gives an tutorial introduction to the pysvn module.

    pysvn features and feature testing

    This document covers pysvn version 1.7. Features offered by pysvn depend on the version of SVN that is being used. Full functionality is only available with SVN 1.6.0 or later.

    Click one of the buttons below to show the pysvn API as supported by a particular version of the SVN.

    Sorry you browser does not support the show API buttons. Try viewing this page in FireFox.

    Showing the PySVN API supported by SVN 1.6.0. Unsupported parts of the API are show like: This.

    The recommended way to test for a feature is to use the python hasattr() builtin. Working out what is and is not support from the version number information is quite complex and unnessesary. For example to test for lock and unlock support:

    client = pysvn.Client()
    if hasattr( client, 'lock' ):
        # use lock
    

    pysvn module

    The pysvn module has the following variables:

    • pysvn.copyright - the pysvn copyright string
    • pysvn.version - the pysvn version as a tuple, (major, minor, patch, build)
    • pysvn.svn_version - subversion version as a tuple (major, minor, micro, tag)

    The pysvn module has six classes:

    The following enumerations are provided:

    Use python builtin dir() to list all available values in an enumeration:

        print dir( pysvn.wc_notify_action )
    

    pysvn.Client - Subversion client interface

    Interface summary:

    client = pysvn.Client()
    client = pysvn.Client( config_dir )
    

    The default subversion configuration directory is used if the config_dir is omitted or set to ''.

    The configuration directory is automatically created if it is missing.

    A Client object can only be used on one thread at a time. If two threads attempt to call methods of Client at the same time one of the threads will get a pysvn.ClientError exception with the value 'client in use on another thread'.

    Variables Callbacks Methods

    Client variables

    exception_style allows you to control the style of exception raised by pysvn.

    commit_info_style allows you to control the style of commit_info returned by pysvn.

    pysvn.Client.exception_style

    exception_style is used to control how pysvn raises ClientError exceptions.

    The default value, 0, makes pysvn raise exceptions as it did prior to pysvn 1.1.2.

    exception_style can be set to 0 or 1, see ClientError for details of effect of the style on the exception raised.

    pysvn.Client.commit_info_style

    commit_info_style is used to control how pysvn return commit information.

    commit_info_style can be set to 0, 1 or 2. The default value, 0, makes pysvn return only the commit revision.

    When set to 1 pysvn returns a dictionary of commit information including date, author, revision and post_commit_err.

    When set to 2 pysvn returns a list of dictionaries of commit information including date, author, revision and post_commit_err.

    Client callbacks

    pysvn uses callback functions to allow for realtime feedback and credential handling.

    callback_cancel allows you to cancel a long running subversion command.

    callback_notify gives feedback as commands runs.

    callback_get_log_message is called when a log message is required.

    callback_get_login is called to get a username and password to access a repository.

    callback_ssl_server_trust_prompt is called when using HTTPS to a server whoes certificate needs is trust verifing.

    callback_conflict_resolver is called to handle conflicts.

    It is possible to use the Client object without setting up any calls backs. Make sure that all nessesary usernames, passwords and SSL certificate information are stored in the subversion configuration directory.

    pysvn.Client.callback_cancel

    import pysvn
    
    cancel_command = False
    def cancel():
        return cancel_command
    
    client = pysvn.Client()
    client.callback_cancel = cancel
    

    The callback_cancel function is called frequently during long running commands. Return True to cause the command to cancel, return False to allow the command to continue.

    pysvn.Client.callback_get_log_message

    import pysvn
    
    log_message = "reason for change"
    def get_log_message():
        return rc, log_message
    
    client = pysvn.Client()
    client.callback_get_log_message = get_log_message
    

    The callback_get_log_message is called when a log message is required to complete the current command. Return the True in rc and a log message as a string. Returning False in rc will cause the command to be cancelled. An empty log_message is not allowed and may cause the command to be cancelled.

    Unicode strings cannot be handled. If you have a unicode string, convert it to UTF-8.

    pysvn.Client.callback_get_login

    import pysvn
    
    def get_login( realm, username, may_save ):
        return retcode, username, password, save
    
    client = pysvn.Client()
    client.callback_get_login = get_login
    

    callback_get_login is called each time subversion needs a username and password in the realm to access a repository and has no cached credentials.

    The may_save parameter is true if subversion is willing to save the answers returned by the callback_get_login function.

    pysvn expect the callback_get_login to return a tuple of four values (retcode, username, password, save).

    • retcode - boolean, False if no username and password are available. True if subversion is to use the username and password.
    • username - string, the username to use
    • password - string, the password to use
    • save - boolean, return True if you want subversion to remember the username and password in the configuration directory. return False to prevent saving the username and password.

    pysvn.Client.callback_notify

    import pysvn
    
    def notify( event_dict ):
        return
    
    client = pysvn.Client()
    client.callback_notify = notify
    

    The callback_notify is called as a command runs each time an interesting event occurs. The details of the event are passed to the callback_notify function as a dictionary.

    The dictionary contains the following values:

    • path - the path of the action refers to
    • action - the events action, one of the wc_notify_action values
    • kind - the node kind, one of the pysvn.node_kind values
    • mime_type - the mime type
    • content_state - one of the pysvn.wc_notify_state values
    • prop_state - one of the pysvn.wc_notify_state values
    • revision - a Revision object

    pysvn.Client.callback_ssl_client_cert_password_prompt

    import pysvn
    
    def ssl_client_cert_password_prompt( realm, may_save ):
        return retcode, password, save
    
    client = pysvn.Client()
    client.callback_ssl_client_cert_password_prompt = ssl_client_cert_password_prompt
    

    callback_ssl_client_cert_password_prompt is called each time subversion needs a password in the realm to use a client certificate and has no cached credentials.

    The may_save parameter is true if subversion is willing to save the answers returned by the callback_ssl_client_cert_password_prompt function.

    pysvn expect the callback_ssl_client_cert_password_prompt to return a tuple of three values (retcode, password, save).

    • retcode - boolean, False if no password is available. True if subversion is to use password.
    • password - string, the password to use
    • save - boolean, return True if you want subversion to remember the password in the configuration directory. return False to prevent saving the password.

    pysvn.Client.callback_ssl_client_cert_prompt

    import pysvn
    
    def ssl_client_cert_prompt( realm, may_save ):
        return retcode, certfile, may_save
    
    client = pysvn.Client()
    client.callback_ssl_client_cert_prompt = ssl_client_cert_prompt
    

    callback_ssl_client_cert_prompt is called each time subversion needs a client certificate.

    pysvn expect the callback_ssl_client_cert_prompt to return a tuple of three values (retcode, certfile, may_save).

    • retcode - boolean, False if no certificate is available. True if subversion is to use the certificate.
    • certfile - string, the certfile to use

    pysvn.Client.callback_ssl_server_prompt

    import pysvn
    
    def ssl_server_prompt( ):
        return 
    
    client = pysvn.Client()
    client.callback_ssl_server_prompt = ssl_server_prompt
    

    NOT IMPLEMENTED - what it used for?

    pysvn.Client.callback_ssl_server_trust_prompt

    import pysvn
    
    def ssl_server_trust_prompt( trust_dict ):
        return retcode, accepted_failures, save
    
    client = pysvn.Client()
    client.callback_ssl_server_trust_prompt = ssl_server_trust_prompt
    

    The callback_ssl_server_trust_prompt is called each time an HTTPS server presents a certificate and subversion is not sure if it should be trusted. callback_ssl_server_trust_prompt is called with information about the certificate in trust dict.

    • failures - int - a bitmask of failures - [What do these bits mean?]
    • hostname - string - the hostname the certificate was presented from
    • finger_print - string - certificate finger print
    • valid_from - string - valid from this ISO8601 date
    • valid_until - string - valid util this ISO8601 date
    • issuer_dname - stirng - the issued dname
    • realm - string - the realm

    pysvn expect the callback_ssl_server_trust_prompt to return a tuple of three values (retcode, accepted_failures, save).

    • retcode - boolean, True if the ssl server is trusted, False if not trusted.
    • accepted_failures - int, the accepted failures allowed. Typically just return trust_dict["failures"].
    • save - boolean, return True if you want subversion to remember the certificate in the configuration directory. return False to prevent saving the certificate.

    pysvn.Client.callback_conflict_resolver

    import pysvn
    
    def conflict_resolver( conflict_description ):
        return conflict_choice, merge_file, save_merged
    
    client = pysvn.Client()
    client.callback_conflict_resolver = conflict_resolver
    

    The callback_conflict_resolver is called each time a conflict needs resolving. It is passed the conflict_description and must return a conflict_choice, merge_file and save_merged.

    The members of the conflict_description dictionary are:

    • path - string - The path that is in conflict (for a tree conflict, it is the victim)
    • node_kind - pysvn.node_kind - The node type of the path being operated on
    • kind - pysvn.conflict_kind - the sort of conflict being described
    • property_name - string or None - The name of the property whose conflict is being described. (Only if kind is 'property'; else undefined.)
    • is_binary - boolean - Whether svn thinks ('my' version of) path is a 'binary' file. (Only if kind is 'text', else undefined.)
    • mime_type - string or None - The svn:mime-type property of ('my' version of) path
    • action - pysvn.wc_conflict_action - the action being attempted on the conflicted node or property
    • reason - pysvn.wc_conflict_reason - The state of the target node or property, relative to its merge-left source, that is the reason for the conflict
    • base_file - string - common ancestor of the two files being merged
    • their_file - string - their version of the file
    • my_file - string - my locally-edited version of the file
    • merged_file - string - merged version; may contain conflict markers
    • operation - pysvn.wc_operation - the operation that exposed the conflict. Used only for tree conflicts
    • src_left_version - pysvn.wc_conflict_version - Info on the "merge-left source" or "older" version of incoming change
    • src_right_version - pysvn.wc_conflict_version - Info on the "merge-right source" or "their" version of incoming change
    • conflict_choice is one of the pysvn.wc_conflict_choice values
    • merge_file is a file name or None
    • save_merged is True or False

    Client methods

    add add_to_changelist annotate annotate2 cat checkin
    checkout cleanup copy copy2 diff diff_peg
    diff_summarize diff_summarize_peg export get_adm_dir get_auth_cache get_auto_props
    get_changelist get_default_password get_default_username get_interactive get_store_passwords import_
    info info2 is_adm_dir is_url list log
    lock ls merge merge_peg merge_peg2 merge_peg2
    mkdir move move2 patch propdel propdel_local
    propdel_remote propget proplist propset propset_local propset_remote
    relocate remove remove_from_changelists resolved revert revpropdel
    revpropget revproplist revpropset root_url_from_path set_adm_dir set_auth_cache
    set_auto_props set_default_password set_default_username set_interactive set_store_passwords status2
    status switch unlock update upgrade vacuum

    pysvn.Client.add_to_changelist

    add_to_changelist( path,
                       changelist,
                       depth=QQQ,
                       changelists=[] )
    

    TBD

    depth is one of the pysvn.depth enums.

    pysvn.Client.add

    add( path,
         recurse=True,
         force=False,
         ignore=False,
         depth=None,
         add_parents=False,
         autoprops=False )
    add( [path,path],
         recurse=True,
         force=False,
         ignore=True,
         depth=None,
         add_parents=False,
         autoprops=True )
    

    Schedules all the files or directories specfied in the paths for addition to the repository. Set recurse to True to recursively add a directory's children. Set force to True to force operation to run. Set ignore to False to disregard default and svn:ignore property ignores. Files are added at the next checkin.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    Set add_parents True to have subversion create missing directories.

    Set autoprops to False to prevent subversion from applying properties automatically.

    pysvn.Client.annotate

    file_annotation = \
    annotate( url_or_path,
              revision_start=pysvn.Revision( opt_revision_kind.number, 0 ),
              revision_end=pysvn.Revision( opt_revision_kind.head ),
              peg_revision=pysvn.Revision( opt_revision_kind.unspecified ) )
     )
    

    Return the annotation for each line in the url_or_path from revision_start to revision_end.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The file_annotation is a list of dictionaries. Each dictionary contains:

    • author - string - the name of the author who last wrote the line
    • date - string - the date of the last change to the line
    • line - string - the text of the line
    • number - int - the line number
    • revision - pysvn.Revision - the revision that committed the line

    pysvn.Client.annotate2

    file_annotation = \
    annotate2( url_or_path,
               revision_start=pysvn.Revision( opt_revision_kind.number, 0 ),
               revision_end=pysvn.Revision( opt_revision_kind.head ),
               peg_revision=pysvn.Revision( opt_revision_kind.unspecified ) )
    

    Return the annotation for each line in the url_or_path from revision_start to revision_end.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The file_annotation is a list of dictionaries. Each dictionary contains:

    • line - string - the text of the line
    • number - int - the line number
    • revision - pysvn.Revision - the revision that committed the line
    • local_change - boolean - true if the change was made locally
    • merged_revision - pysvn.Revsion or None - None if not merged otherwise revision of the merged line
    • merged_path - string or None - path of the merged line if merged
    • local_changed - boolean - If there is no blame information for this line, revision will be invalid and rev_props will be None. In this case local_change will be True if the reason there is no annotation information is that the line was modified locally. In all other cases local_change will be False.
    • merged_rev_props - not implemented yet

    Note: To find the author and date of the lines in the annotation use log().

    pysvn.Client.cat

    file_text = \
    cat( url_or_path,
         revision=pysvn.Revision( opt_revision_kind.head ),
         peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
         expand_keywords=false,
         get_props=false )
    
    
    file_text, props = \ cat( url_or_path, revision=pysvn.Revision( opt_revision_kind.head ), peg_revision=pysvn.Revision( opt_revision_kind.unspecified ), expand_keywords=False, get_props=True )

    Return the contents of url_or_path for the specified revision as a string, file_text.

    When get_props is True the props of the file are returned in a dictionary.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    pysvn.Client.checkin

    revision = \
    checkin( path,
            log_message,
            recurse=True,
            keep_locks=False,
            depth,
            keep_changelist,
            changelists,
            revprops,
            commit_as_operations=False,
            include_file_externals=False,
            include_dir_externals=False )
    revision = \
    checkin( [path,path],
            log_message,
            recurse=True,
            keep_locks=False,
            depth,
            keep_changelist,
            changelists,
            revprops,
            commit_as_operations=False,
            include_file_externals=False,
            include_dir_externals=False )
    

    checkin the files in the path_list to the repository with the specified log_message. Set recurse to True to recursively checkin a directory's children with the same log message. Set keep_locks to True to prevent locks in the path being unlocked.

    checkin returns a pysvn.Revision containing the number of the checked in revision.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    changelists is an array of string changelist names, used as a restrictive filter on items that are committed; that is, don't commit anything unless it's a member of one of those changelists. After the commit completes successfully, remove changelist associations from the targets, unless keep_changelists is set. If changelists is empty or None, no changelist filtering occurs.

    If not None revprop is a list holding additional, custom revision properties to be set on the new revision. This list cannot contain any standard Subversion properties.

    If commit_as_operations is set to False, when a copy is committed all changes below the copy are always committed at the same time (independent of the value of depth). If commit_as_operations is True, changes to descendants are only committed if they are itself included via depth and targets.

    If include_file_externals and/or include_dir_externals are True, also commit all file and/or dir externals (respectively) that are reached by recursion, except for those externals which:

    • have a fixed revision, or
    • come from a different repository root URL (dir externals).

    These flags affect only recursion; externals that directly appear in targets are always included in the commit.

    pysvn.Client.checkout

    revision = \
    checkout( url,
              path,
              recurse=True,
              revision=pysvn.Revision( opt_revision_kind.head ),
              peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
              ignore_externals=False,
              allow_unver_obstructions=False,
              depth=None )
    

    checkout the repository at url into the location specified by path. Set recurse to True to recursively check out a directory's children. Specify a revision to check out a particular version of the source tree. Set ignore_externals to True to ignore externals definitions.

    peg_revision indicates in which revision url is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    checkout returns a pysvn.Revision containing the number of the checked out revision.

    Note: Subversion seems to return 0 rather then the actual revision. Use a notify callback and record the revision reported for the pysvn.wc_notify_action.update_completed event. This is what the svn command does.

    pysvn.Client.cleanup

    cleanup( path,
             fix_recorded_timestamps=True,
             clear_dav_cache=True,
             vacuum_pristines=True,
             include_externals=False )
    

    Clean up any locks in the working copy at path. Usually such locks are the result of a failed or interrupted operation.

    If break_locks is True, existing working copy locks at or below dir_abspath are broken, otherwise a normal write lock is obtained.

    If fix_recorded_timestamps is True, this function fixes recorded timestamps for unmodified files in the working copy, reducing comparision time on future checks.

    If clear_dav_cache is True, the caching of DAV information for older mod_dav served repositories is cleared. This clearing invalidates some cached information used for pre-HTTPv2 repositories.

    If vacuum_pristines is True, and dir_abspath points to the working copy root unreferenced files in the pristine store are removed.

    If include_externals is True, recurse into externals and clean them up as well.

    pysvn.Client.copy

    copy( src_url_or_path,
          dest_url_or_path,
          src_revision=pysvn.Revision( opt_revision_kind.head )
          )
    

    Duplicate something in working copy or repos, remembering history. The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the src_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    src_url_or_path and dest_url_or_path can each be either a working copy (WC) path or URL:

    • WC -> WC: copy and schedule for addition (with history)
    • WC -> URL: immediately commit a copy of WC to URL
    • URL -> WC: check out URL into WC, schedule for addition
    • URL -> URL: complete server-side copy; used to branch and tag

    If the destination is a URL the client_get_log_message callback must be implemented to return a log message.

    pysvn.Client.copy2

    copy2( sources,
           dest_url_or_path,
           copy_as_child=False,
           make_parents=False,
           revprops,
           ignore_externals=False,
           metadata_only=False,
           pin_externals=False,
           externals_to_pin=[(path_or_url, externals_description),...] )
    

    Duplicate something in working copy or repos, remembering history. The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the src_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    sources is a list of tuples of (url_or_path, rev), you can ommit rev by passing (url_or_path,). TBD better docs here.

    revprops TBD

    set ignore_externals to True to ignore externals.

    If metadata_only is True and copying a file in a working copy, everything in the metadata is updated as if the node is moved, but the actual disk copy operation is not performed. This feature is useful for clients that want to keep the working copy in sync while the actual working copy is updated by some other task.

    If pin_externals is set, pin URLs in copied externals definitions to their current revision unless they were already pinned to a particular revision. A pinned external uses a URL which points at a fixed revision, rather than the HEAD revision. Externals in the copy destination are pinned to either a working copy base revision or the HEAD revision of a repository (as of the time the copy operation is performed), depending on the type of the copy source:

    If not None, externals_to_pin restricts pinning to a subset of externals. It is a dictionary keyed by either a local absolute path or a URL at which an svn:externals property is set. The dictionary contains externals description each of which corresponds to a single line of an svn:externals definition.

    Externals corresponding to these items will be pinned, other externals will not be pinned. If externals_to_pin is None then all externals are pinned. If pin_externals is False then externals_to_pin is ignored.

    src_url_or_path and dest_url_or_path can each be either a working copy (WC) path or URL:

    • WC -> WC: copy and schedule for addition (with history)
    • WC -> URL: immediately commit a copy of WC to URL
    • URL -> WC: check out URL into WC, schedule for addition
    • URL -> URL: complete server-side copy; used to branch and tag

    If the destination is a URL the client_get_log_message callback must be implemented to return a log message.

    pysvn.Client.diff

    diff_text = \
    diff( tmp_path,
          url_or_path,
          revision1=pysvn.Revision( opt_revision_kind.base ),
          url_or_path2=url_or_path,
          revision2=pysvn.Revision( opt_revision_kind.working ),
          recurse=True,
          ignore_ancestry=False,
          diff_deleted=True,
          ignore_content_type=False,
          header_encoding="",
          diff_options=[],
          depth=depth,,
          relative_to_dir=None,
          changelists=None,
          show_copies_as_adds=False,
          use_git_diff_format=False,
          diff_added=False,
          ignore_properties=False,
          properties_only=False,
          return_bytes=False )
    

    Return the differences between revision1 of url_or_path and revision2 of url_or_path2. diff_text is a string containing the diff output.

    diff uses tmp_path to form the filename when creating any temporary files needed. The names are formed using tmp_path + unique_string + ".tmp". For example tmp_path=/tmp/diff_prefix will create files like /tmp/diff_prefix.tmp and /tmp/diff_prefix1.tmp.

    Diff output will not be generated for binary files, unless ignore_content_type is true, in which case diffs will be shown regardless of the content types.

    Generated headers are encoded using header_encoding.

    The list of diff_options strings are passed to the external diff program that subversion uses. Typical options are -b (ignore space changes) and -w (ignore all white space). The exact options that work depend on the version of subversion used and its configuration.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    If relative_to_dir is not None, the original_path and modified_path will have the relative_to_dir stripped from the front of the respective paths.

    If relative_to_dir is not None but relative_to_dir is not a parent path of the target, an error is returned.

    If show_copies_as_adds is True, then copied files will not be diffed against their copyfrom source, and will appear in the diff output in their entirety, as if they were newly added.

    If use_git_diff_format is True, then the git's extended diff format will be used.

    If diff_added is True show diff of added files.

    If ignore_properties is True then ignore diff of properties.

    If properties_only is True then only diff properties.

    If return_bytes is True diff_text is returned as a bytes object. Otherwise diff_text is assumed to be UTF-8 and a string is returned.

    pysvn.Client.diff_peg

    diff_text = \
    diff_peg( tmp_path,
              url_or_path,
              peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
              revision_start=pysvn.Revision( opt_revision_kind.base ),
              revision_end=pysvn.Revision( opt_revision_kind.working ),
              recurse=True,
              ignore_ancestry=False,
              diff_deleted=True,
              ignore_content_type=False,
              header_encoding="",
              diff_options=[],
              depth=depth,
              show_copies_as_adds=False,
              use_git_diff_format=False,
              diff_added=False,
              ignore_properties=False,
              properties_only=False,
              return_bytes=False )
    

    return the differences between two revisions of the url_or_path. diff_text is a string containing the diff output.

    diff uses tmp_path to form the filename when creating any temporary files needed. The names are formed using tmp_path + unique_string + ".tmp". For example tmp_path=/tmp/diff_prefix will create files like /tmp/diff_prefix.tmp and /tmp/diff_prefix1.tmp.

    Set recurse to True to recursively diff a directory's children. diff_text is a string containing the diff.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    Diff output will not be generated for binary files, unless ignore_content_type is true, in which case diffs will be shown regardless of the content types.

    Generated headers are encoded using header_encoding.

    The list of diff_options strings are passed to the external diff program that subversion uses. Typical options are -b (ignore space changes) and -w (ignore all white space). The exact options that work depend on the version of subversion used and its configuration.

    If show_copies_as_adds is True, then copied files will not be diffed against their copyfrom source, and will appear in the diff output in their entirety, as if they were newly added.

    If use_git_diff_format is True, then the git's extended diff format will be used.

    If diff_added is True show diff of added files.

    If ignore_properties is True then ignore diff of properties.

    If properties_only is True then only diff properties.

    pysvn.Client.diff_summarize

    summary = \
    diff_summarize( url_or_path1,
                    revision1=pysvn.Revision( opt_revision_kind.base ),
                    url_or_path2=url_or_path,
                    revision2=pysvn.Revision( opt_revision_kind.working ),
                    recurse=True,
                    ignore_ancestry=False,
                    depth=depth )
    

    Produce a diff summary which lists the changed items between url_or_path1 revision1 and url_or_path2 revision2 without creating text deltas. url_or_path1 and url_or_path2 can be either working-copy paths or URLs.

    The function may report false positives if ignore_ancestry is False, since a file might have been modified between two revisions, but still have the same contents.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    If return_bytes is True diff_text is returned as a bytes object. Otherwise diff_text is assumed to be UTF-8 and a string is returned.

    pysvn.Client.diff_summarize_peg

    diff_text = \
    diff_summarize_peg( url_or_path,
                        peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
                        revision_start=pysvn.Revision( opt_revision_kind.base ),
                        revision_end=pysvn.Revision( opt_revision_kind.working ),
                        recurse=True,
                        ignore_ancestry=False,
                        depth=depth )
    

    Produce a diff summary which lists the changed items between the filesystem object url_or_path in peg revision peg_revision, as it changed between revision_start and revision_end. url_or_path can be either a working-copy path or URL.

    If peg_revision is opt_revision_unspecified, behave identically to svn_client_diff_summarize(), using path for both of that function's url_or_path1 and url_or_path2 argments.

    The function may report false positives if ignore_ancestry is False, as described in the documentation for diff_summarize().

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.export

    revision = \
    export( src_url_or_path,
            dest_path,
            force=False,
            revision=pysvn.Revision(),
            native_eol=None,
            ignore_externals=False,
            recurse=True,
            peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
            depth=depth,
            ignore_keywords=False )
    

    Create an unversioned copy of the src_path at revision in dest_path. Set recurse to False to export a single file. Set ignore_externals to True to ignore externals definitions. Set ignore_keywords to True to prevnet keyword replacement.

    peg_revision indicates in which revision src_url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    1. Exports a clean directory tree from the repository specified by URL src_url_or_path, at revision if it is given, otherwise at HEAD, into dest_path.
    2. Exports a clean directory tree from the working copy specified by src_path into dest_path. All local changes will be preserved, but files not under revision control will not be copied.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    native_eol parameter allows the line ending of files with svn:eol-style property set to native to be overridden. Use None to use the eol-style of the Operating System, use "LF" to use "\n", "CR" to use "\r" and "CRLF" to use "\r\n".

    export returns a pysvn.Revision containing the number of the checked in revision.

    Note: The native_eol parameter is only available for svn 1.1.0 or later.

    pysvn.Client.get_auth_cache

    enabled = get_auth_cache()
    

    return true if credential caching is enabled, otherwise return false.

    pysvn.Client.get_adm_dir

    name = get_adm_dir()
    

    Returns the name of the subverion admin directory.

    pysvn.Client.get_auto_props

    enabled = get_auto_props()
    

    Returns true if svn will automatically set properties when adding files, otherwise returns false.

    pysvn.Client.get_changelist

    changelist_list = \
    get_changelist( path,
                    changelist,
                    depth=depth,
                    changelists=[] )
    

    TBD

    The depth is one of the pysvn.depth enums.

    pysvn.Client.get_default_password

    password = get_default_password()
    

    Returns None if no default is set otherwise returns the password as a string.

    pysvn.Client.get_default_username

    username = get_default_username()
    

    Returns None if no default is set otherwise returns the username as a string.

    pysvn.Client.get_interactive

    enabled = get_interactive()
    

    Returns true if svn will prompt for missing credential information, otherwise returns false.

    pysvn.Client.get_store_passwords

    enabled = get_store_passwords()
    

    Returns true if svn will store passwords after prompting for them, otherwise returns false.

    pysvn.Client.import_

    revision = \
    import_( path,
             url,
             log_message,
             recurse=True,
             ignore=False,
             revprops,
             autoprops=False )
    

    Commit an unversioned file or tree into the repository.

    Recursively commit a copy of PATH to URL. Parent directories are created as necessary in the repository. Set ignore to False to disregard default and svn:ignore property ignores.

    revprops TBD

    import_ returns a pysvn.Revision containing the number of the checked in revision.

    pysvn.Client.info

    entry = info( path )
    

    return information on path as a Entry object.

    Set autoprops to False to prevent subversion from applying properties automatically.

    pysvn.Client.info2

    entry_list = \
    info2( url_or_path,
           revision=pysvn.Revision( opt_revision_kind.unspecified ),
           peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
           recurse=True,
           depth=depth
           fetch_excluded=False,
           fetch_actual_only=True )
    
    

    return information on url_or_path as a list of (path, info_dict) tuples. To return information about a URL revision must be opt_revision_kind.head or opt_revision_kind.number.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    If fetch_excluded is True, also also send excluded nodes in the working copy to receiver, otherwise these are skipped.

    If fetch_actual_only is True also send nodes that don't exist as versioned but are still tree conflicted.

    The info_dict contains:

    • URL - URL or path
    • rev - pysvn.Revision or None
    • kind - kind of path
    • repos_root_URL - string
    • repos_UUID - string
    • last_changed_rev - pysvn.Revision or None
    • last_changed_date - time or None
    • last_changed_author - string or None
    • lock - None or dictionary containing:
      • path - string
      • token - string or None
      • owner - string or None
      • comment - string or None
      • is_dav_comment - true if is DAV comment
      • creation_date - time or None
    • wc_info - None if url_or_path is a URL; otherwise a dictionary containing:
      • schedule - pysvn.wc_schedule or None
      • copyfrom_url - string or None
      • copyfrom_rev - pysvn.Revision or None
      • text_time - time or None
      • prop_time - time or None
      • checksum - string or None
      • conflict_old - string or None
      • conflict_new - string or None
      • conflict_wrk - string or None
      • prejfile - string or None

    Note: The info2 command is only available with svn 1.2.0 or later.

    pysvn.Client.is_adm_dir

    rc = \
    is_adm_dir( name )
    

    Return True is the name is an subversion admin directory.

    pysvn.Client.root_url_from_path

    root_url = \
        root_url_from_path( url_or_path )
    

    Return the root URL of the repository given the url_or_path.

    pysvn.Client.is_url

    rc = \
    is_url( url )
    

    return True if the url is a known subversion url.

    pysvn.Client.list

    entries_list = \
    list( url_or_path,
          peg_revision=pysvn.Revision( opt_revision_kind.unspecified ) )
          revision=pysvn.Revision( opt_revision_kind.head ),
          recurse=False,
          dirent_fields=pysvn.SVN_DIRENT_ALL,
          fetch_locks=False,
          depth=depth,
          include_externals=False,
          patterns=[pattern, pattern] )
    
    , depth=depth

    Returns a list with a tuple of information for each file in the given path at the provided revision.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used in place of recurse. depth is one of the pysvn.depth enums.

    Set include_externals to True to include externals.

    The patterns argument allows the set of files to be returned to be filter on the server. Provide a list if glob patterns. For example to get only python and C++ files: ["*.py", "*.cpp"]

    dirent_fields controls which dirent fields will return. Use pysvn.SVN_DIRENT_ALL to return all fields. Bit-wise or one of these values to return only the selected fields:

    • SVN_DIRENT_KIND - return kind field
    • SVN_DIRENT_SIZE - return size field
    • SVN_DIRENT_HAS_PROPS - return has_props field
    • SVN_DIRENT_CREATED_REV - return created_rev field
    • SVN_DIRENT_TIME - return time field
    • SVN_DIRENT_LAST_AUTHOR - return last_author field

    The tuple contains:

    • 0 - PysvnList containing the dirent information
    • 1 - PysvnLock containing the lock information or None
    • 2 - external_parent_url - string or None
    • 3 - external_target - string or None

    The PysvnList object contains the requested dirent fields:

    • created_rev - pysvn.Revision - the revision of the last change
    • has_props - bool - True if the node has properties
    • kind - node_kind - one of the pysvn.node_kind values
    • last_author - string - the author of the last change
    • repos_path - string - (always present) absolute path of file in the repository
    • size - long - size of file
    • time - float - the time of the last change

    The PysvnList object obtains the lock information:

    • comment - string - the lock comment
    • token - string - lock token
    • path -
    • owner - string - owner of the lock
    • expiration_date - None or int - time lock will expire
    • is_dav_comment - boolean - true is a commment from DAV
    • creation_date - int - time the lock was created

    If list() was called with include_externals set to True, external_parent_url and external_target will be set. external_parent_url is url of the directory which has the externals definitions. external_target is the target subdirectory of externals definitions which is relative to the parent directory that holds the external item.

    If external_parent_url and external_target are defined, the item being listed is part of the external described by external_parent_url and external_target. Else, the item is not part of any external. Moreover, we will never mix items which are part of separate externals, and will always finish listing an external before listing the next one.

    pysvn.Client.lock

    lock( url_or_path,
          lock_comment, 
          force=False )
    

    lock the url_or_path with lock_comment. Set force to True to override any lock held by another user.

    pysvn.Client.log

    log_messages = \
    log( url_or_path,
         revision_start=pysvn.Revision( opt_revision_kind.head ),
         revision_end=pysvn.Revision( opt_revision_kind.number, 0 ),
         discover_changed_paths=False,
         strict_node_history=True,
         limit=0,
         peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
         include_merged_revisions=False,
         revprops=list_of_revprop_names )
    

    Return the log messages for the specified url_or_path between revisions start and end. Set limit to the maximum number of log messages to be returned, 0 means return all messages.

    If discover_changed_paths is set, the changed_paths dictionary entry is filled with a list of changed paths. If strict_node_history is set, log entries will not cross copies.

    If url_or_path no longer exists in the repos of WC then pass in a peg_revision of a revision where it did exist.

    include_merged_revisions TBD

    revprops is a list of strings that name the revprops to be returned.

    log returns a list of log entries; each log entry is a dictionary. The dictionary contains:

    • author - string - the name of the author who committed the revision
    • date - float time - the date of the commit
    • message - string - the text of the log message for the commit
    • revision - pysvn.Revision - the revision of the commit
    • changed_paths - list of dictionaries. Each dictionary contains:
      • path - string - the path in the repository
      • action - string
      • copyfrom_path - string - if copied, the original path, else None
      • copyfrom_revision - pysvn.Revision - if copied, the revision of the original, else None

    pysvn.Client.ls

    entries_list = \
    ls( url_or_path,
        revision=pysvn.Revision( opt_revision_kind.head ),
        recurse=True,
        peg_revision=pysvn.Revision( opt_revision_kind.unspecified ) )
    

    Use the list method in new code as it fixes performance and ambiguity problems with the ls method.

    Returns a list of dictionaries for each file the given path at the provided revision.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The dictionary contains:

    • created_rev - pysvn.Revision - the revision of the last change
    • has_props - bool - True if the node has properties
    • kind - node_kind - one of the pysvn.node_kind values
    • last_author - the author of the last change
    • name - string - name of the file
    • size - long - size of file
    • time - float - the time of the last change

    pysvn.Client.merge

    merge( url_or_path1,
           revision1,
           url_or_path2,
           revision2,
           local_path,
           force=False,
           recurse=True,
           notice_ancestry=False,
           dry_run=False,,
           depth=depth,
           record_only=False,
           merge_options=[],
           allow_mixed_revisions=false,
           ignore_mergeinfo=not notice_ancestry )
    

    Apply the differences between two sources to a working copy path.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    merge_options (a list of strings), is used to pass additional command line arguments to the merge processes (internal or external).

    The internal subversion diff supports the following options:

    • --ignore-space-change, -b
    • --ignore-all-space, -w
    • --ignore-eol-style
    • --unified, -u (for compatibility, does nothing).

    If allow_mixed_revisions is False, and merge_target is a mixed-revision working copy, raise SVN_ERR_CLIENT_MERGE_UPDATE_REQUIRED.

    Because users rarely intend to merge into mixed-revision working copies, it is recommended to set this parameter to FALSE by default unless the user has explicitly requested a merge into a mixed-revision working copy.

    If ignore_mergeinfo is true, disable merge tracking, by treating the two sources as unrelated even if they actually have a common ancestor.

    pysvn.Client.merge_peg

    merge_peg( url_or_path,
               revision1,
               revision2,
               peg_revision,
               local_path,
               recurse=True,
               notice_ancestry,
               force=False,
               dry_run=False,
               depth=depth,
               record_only=False,
               merge_options=[] )
    

    Apply the differences between two sources to a working copy path.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    merge_options (a list of strings), is used to pass additional command line arguments to the merge processes (internal or external).

    The internal subversion diff supports the following options:

    • --ignore-space-change, -b
    • --ignore-all-space, -w
    • --ignore-eol-style
    • --unified, -u (for compatibility, does nothing).

    pysvn.Client.merge_peg2

    merge_peg2( sources,
                ranges_to_merge,
                peg_revision,
                tareget_wcpath,
                depth=depth,
                notice_ancestry=False,
                force=False,
                dry_run=False,
                record_only=True,
                merge_options=[],
                allow_mixed_revisions=false,
                ignore_mergeinfo=false )
    

    Apply the differences between the ranges_to_merge in sources to a working copy path, target_wcpath. ranges_to_merge is a list of tuples with the start and end revisions to be merged.

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth is one of the pysvn.depth enums.

    merge_options (a list of strings), is used to pass additional command line arguments to the merge processes (internal or external).

    The internal subversion diff supports the following options:

    • --ignore-space-change, -b
    • --ignore-all-space, -w
    • --ignore-eol-style
    • --unified, -u (for compatibility, does nothing).

    If allow_mixed_revisions is False, and merge_target is a mixed-revision working copy, raise SVN_ERR_CLIENT_MERGE_UPDATE_REQUIRED.

    Because users rarely intend to merge into mixed-revision working copies, it is recommended to set this parameter to FALSE by default unless the user has explicitly requested a merge into a mixed-revision working copy.

    If ignore_mergeinfo is true, disable merge tracking, by treating the two sources as unrelated even if they actually have a common ancestor.

    pysvn.Client.merge_reintegrate

    merge_reintegrate( url_or_path,
                       revision,
                       local_path,
                       dry_run=False,
                       merge_options=[] )
    

    Lump-merge all of url_or_path unmerged changes into local_path.

    merge_options (a list of strings), is used to pass additional command line arguments to the merge processes (internal or external).

    The internal subversion diff supports the following options:

    • --ignore-space-change, -b
    • --ignore-all-space, -w
    • --ignore-eol-style
    • --unified, -u (for compatibility, does nothing).

    pysvn.Client.mkdir

    mkdir( url_or_path,
           log_message,
           make_parents,
           revprops )
    mkdir( [url_or_path,url_or_path],
           log_message,
           make_parents,
           revprops )
    

    Create a new directory under revision control.

    url_or_path can be a list of URLs and paths

    make_parents and revprops TBD

    If url_or_path is a path, each directory is scheduled for addition upon the next commit.

    If url_or_path is a URL, the directories are created in the repository via an immediate commit.

    In both cases, all the intermediate directories must already exist.

    pysvn.Client.move

    move( src_url_or_path,
          dest_url_or_path,
          force=False )
    

    Move (rename) something in working copy or HEAD revision of repository.

    NOTE: this command is equivalent to a 'copy' and 'delete'.

    src_path and dest_path can both be working copy (WC) paths or URLs:

    • WC -> WC: move and schedule for addition (with history)
    • URL -> URL: complete server-side rename.

    If src_url_or_path is a path, each item is scheduled for deletion upon the next commit. Files, and directories that have not been committed, are immediately removed from the working copy. The command will not remove PATHs that are, or contain, unversioned or modified items; set force=True to override this behaviour.

    If src_url_or_path is a URL, the items are deleted from the repository via an immediate commit.

    pysvn.Client.move2

    move2( sources,
           dest_url_or_path,
           move_as_child=False,
           make_parents=False,
           revprops,
           allow_mixed_revisions=False,
           metadata_only=False )
    

    Duplicate something in working copy or repos, remembering history. The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the src_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    If not None, revprop is a list of strings holding additional, custom revision properties to be set on the new revision in the event that this is a committing operation. This table cannot contain any standard Subversion properties.

    If allow_mixed_revisions is False, SVN_ERR_WC_MIXED_REVISIONS will be raised if the move source is a mixed-revision subtree.

    If allow_mixed_revisions is True, a mixed-revision move source is allowed but the move will degrade to a copy and a delete without local move tracking. This parameter should be set to False except where backwards compatibility to older versions of subversion is required.

    If metadata_only is TRUE and moving a file in a working copy, everything in the metadata is updated as if the node is moved, but the actual disk move operation is not performed. This feature is useful for clients that want to keep the working copy in sync while the actual working copy is updated by some other task.

    src_url_or_path and dest_url_or_path can each be either a working copy (WC) path or URL:

    • WC -> WC: move and schedule for addition (with history)
    • WC -> URL: immediately commit a move of WC to URL
    • URL -> WC: check out URL into WC, schedule for addition
    • URL -> URL: complete server-side move; used to branch and tag

    If the destination is a URL the client_get_log_message callback must be implemented to return a log message.

    pysvn.Client.patch

    svn_client_patch(patch_abspath,
                     wc_dir_abspath,
                     dry_run=False,
                     strip_count=0,
                     reverse=False,
                     ignore_whitespace=False,
                     remove_tempfiles=False)
    

    Apply a unidiff patch that's located at absolute path patch_abspath to the working copy directory at wc_dir_abspath.

    This function makes a best-effort attempt at applying the patch. It might skip patch targets which cannot be patched (e.g. targets that are outside of the working copy). It will also reject hunks which cannot be applied to a target in case the hunk's context does not match anywhere in the patch target.

    If dry_run is True, the patching process is carried out, and full notification feedback is provided, but the working copy is not modified.

    strip_count specifies how many leading path components should be stripped from paths obtained from the patch. It is an error if a negative strip count is passed.

    If reverse is True, apply patches in reverse, deleting lines the patch would add and adding lines the patch would delete.

    If ignore_whitespace is True, allow patches to be applied if they only differ from the target by whitespace.

    If remove_tempfiles is True, lifetimes of temporary files created during patching will be managed internally. Otherwise, the caller should take ownership of these files, the names of which can be obtained by passing a patch_func callback.

    If notify_func is not None, invoke notify_func as patching progresses.

    If cancel_func is not None, invoke it at various places during the operation.

    pysvn.Client.propdel

    rev = \
    propdel( prop_name,
             url_or_path,
             revision=pysvn.Revision(),
             recurse=False,
             skip_checks=False,
             depth=depth,
             base_revision_for_url=pysvn.Revision( opt_revision_kind.number, see-text ),
             revprops )
    

    Delete the property prop_name from url_or_path.

    If skip_checks is true, do no validity checking. But if skip_checks is false, and propname is not a valid property for target, return an error, either SVN_ERR_ILLEGAL_TARGET (if the property is not appropriate for target), or SVN_ERR_BAD_MIME_TYPE (if propname is "svn:mime-type", but propval is not a valid mime-type).

    The url_or_path may only be an URL if base_revision_for_url is not -1; in this case, the property will only be set if it has not changed since revision base_revision_for_url. base_revision_for_url must be -1 if url_or_path is not an URL.

    The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the src_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    revprops TBD

    pysvn.Client.propdel_local

    propdel_local( prop_name,
                   path,
                   depth=empty,
                   changelist=None )
    

    path is either a string path or a list of path strings.

    Delelte propname fromn each path in the list. The paths must be all working copy paths.

    If depth is svn_depth_empty, set the property on each member of targets only; if svn_depth_files, set it on targets and their file children (if any); if svn_depth_immediates, on targets and all of their immediate children (both files and directories); if svn_depth_infinity, on targets and everything beneath them.

    changelists is an list of string changelist names, used as a restrictive filter on items whose properties are set; that is, don't set properties on any item unless it's a member of one of those changelists. If changelists is empty (or altogether None), no changelist filtering occurs.

    The context cancel callback can be used to cannle propset_local.

    pysvn.Client.propdel_remote

    commit_info = \
    propdel_remote( prop_name,
                    prop_value,
                    url,
                    base_revision_for_url=pysvn.Revision( opt_revision_kind.number, 0 ), )
    

    Delete propname from the url.

    Immediately attempt to commit the property change in the repository, using the log message returned from the context log messages callback.

    If the property has changed on url since revision base_revision_for_url (must be opt_revision_kind.number), no change will be made and an error will be returned.

    commit_info returns the detail of the successful commit.

    pysvn.Client.propget

    prop_list = \
    propget( prop_name,
             url_or_path,
             revision=pysvn.Revision(),
             recurse=False,
             peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
             depth=depth,
             get_inherited_props=False )
    

    Returns a dictionary with keys of url_or_path and values of the prop_name.

    If get_inherited_props is True returns a tuple of two items:

    • 0 - dictionary with keys of url_or_path and values of the prop_name.
    • 1 - dictionary with keys of url_or_path and values of the prop_name that where inherited.

    The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the url_or_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.proplist

    prop_list = \
    proplist( url_or_path,
              revision=pysvn.Revision(),
              recurse=False,
              peg_revision=pysvn.Revision( opt_revision_kind.unspecified ),
              depth=depth )
    

    Returns a list of tuples (path, prop_dict). The prop_dict contains the prop_names and their values if set on the path.

    The src_revision defaults to pysvn.Revision( opt_revision_kind.head ) if the url_or_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    peg_revision indicates in which revision url_or_path is valid. If peg_revision.kind is opt_revision_kind.unspecified, then it defaults to opt_revision_kind.head for URLs or opt_revision_kind.working for WC targets.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.propset

    commit_info = \
    propset( prop_name,
             prop_value,
             url_or_path,
             revision=pysvn.Revision(),
             recurse=False,
             skip_checks=False,
             depth=depth,
             base_revision_for_url=[0 for URL, -1 for path],
             allow_unver_obstructions=False,
             revprops )
    

    Set the property prop_name to prop_value in url_or_path.

    If skip_checks is true, do no validity checking. But if skip_checks is false, and propname is not a valid property for target, return an error, either SVN_ERR_ILLEGAL_TARGET (if the property is not appropriate for target), or SVN_ERR_BAD_MIME_TYPE (if propname is "svn:mime-type", but propval is not a valid mime-type).

    The revision defaults to pysvn.Revision( opt_revision_kind.head ) if the url_or_path is a URL otherwise to pysvn.Revision( opt_revision_kind.working ).

    The url_or_path may only be an URL if base_revision_for_url is not -1; in this case, the property will only be set if it has not changed since revision base_revision_for_url. base_revision_for_url must be -1 if url_or_path is not an URL.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    If allow_unver_obstructions is False then the update will abort if there are any unversioned obstructing items.

    revprops TBD

    pysvn.Client.propset_local

    propset_local( prop_name,
                   prop_value,
                   path,
                   depth=empty,
                   skip_checks=False,
                   changelist=None )
    

    path is either a string path or a list of path strings.

    Set propname to propval on each path in the list. The paths must be all working copy paths.

    If depth is svn_depth_empty, set the property on each member of targets only; if svn_depth_files, set it on targets and their file children (if any); if svn_depth_immediates, on targets and all of their immediate children (both files and directories); if svn_depth_infinity, on targets and everything beneath them.

    changelists is an list of string changelist names, used as a restrictive filter on items whose properties are set; that is, don't set properties on any item unless it's a member of one of those changelists. If changelists is empty (or altogether None), no changelist filtering occurs.

    If propname is an svn-controlled property (i.e. prefixed with "svn:"), then the caller is responsible for ensuring that the value uses LF line-endings.

    If skip_checks is True, do no validity checking. But if skip_checks is False, and propname is not a valid property for targets, return an error, either SVN_ERR_ILLEGAL_TARGET (if the property is not appropriate for targets), or SVN_ERR_BAD_MIME_TYPE (if propname is "svn:mime-type", but propval is not a valid mime-type).

    The context cancel callback can be used to cannle propset_local.

    pysvn.Client.propset_remote

    commit_info = \
    propset_remote( prop_name,
                    prop_value,
                    url,
                    skip_checks=False,
                    base_revision_for_url=0,
                    revprops=None )
    

    Set propname to propval on url.

    Immediately attempt to commit the property change in the repository, using the log message returned from the context log messages callback.

    If the property has changed on url since revision base_revision_for_url (which must not be SVN_INVALID_REVNUM), no change will be made and an error will be returned.

    If non None, revprops is a list of tuples, (string names, string value), holding additional, custom revision properties to be set on the new revision. This list cannot contain any standard Subversion properties.

    commit_info returns the detail of the successful commit.

    If propname is an svn-controlled property (i.e. prefixed with "svn:"), then the caller is responsible for ensuring that the value uses LF line-endings.

    If skip_checks is True, do no validity checking. But if skip_checks is False, and propname is not a valid property for url, return an error, either SVN_ERR_ILLEGAL_TARGET (if the property is not appropriate for url), or SVN_ERR_BAD_MIME_TYPE (if propname is "svn:mime-type", but propval is not a valid mime-type).

    pysvn.Client.relocate

    relocate( from_url,
              to_url,
              path,
              recurse=True,
              ignore_externals=True )
    

    Relocate the working copy from from_url to to_url of path.

    Set ignore_externals to False to work on the externals.

    Note: recurse is ignored since subversion 1.7

    pysvn.Client.remove

    remove( url_or_path_list,
            force=False,
            keep_local=False,
            revprops )
    

    If url_or_path is a path, each item is scheduled for deletion upon the next commit. Files, and directories that have not been committed, are immediately removed from the working copy. The command will not remove paths that are, or contain, unversioned or modified items; set force=True to override this behaviour.

    Set keep_local to True to prevent the local file from being delete.

    revprops TBD

    If url_or_path is a URL, the items are deleted from the repository via an immediate commit.

    pysvn.Client.remove_from_changelists

    remove_from_changelists( path,
                             changelist,
                             depth=pysvn.depth.infinite,
                             changelists=[] )
    

    TBD

    pysvn.Client.resolved

    resolved( path,
              recurse=True,
              depth=depth )
    

    Mark the conflicted file at path as resolved.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.revert

    revert( path,
            recurse=False,
            depth=depth,
            changelists=[],
            clear_changelists=false,
            metadata_only=false )
    revert( [path,path],
            recurse=False,
            depth=depth,
            changelists=[],
            clear_changelists=false,
            metadata_only=false )
    

    Discard any changes in the working copy at path. Set recurse to True to recursively revert a directory's children.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.revpropdel

    rev = \
    revpropdel( prop_name,
                url,
                revision=pysvn.Revision( opt_revision_kind.head ),
                force=False,
                original_prop_value=None )
    

    Delete the revision property prop_name from url at the revision.

    If original_prop_value is specified its string value is compared to the current value of the property and only if it matches does the revpropdel succeed.

    pysvn.Client.revpropget

    rev_prop = \
    revpropget( prop_name,
                url,
                revision=pysvn.Revision( opt_revision_kind.head ) )
    

    Returns a tuple (rev, prop_val) where the prop_val contains the revision property value.

    pysvn.Client.revproplist

    rev_prop_dict = \
    revproplist( url,
                 revision=pysvn.Revision( opt_revision_kind.head ) )
    

    Returns a tuple (revision, prop_dict) where the prop_dict contains the revision properies and their values.

    pysvn.Client.revpropset

    
    old_prop_value = \
    
    revpropset( prop_name,
                prop_value,
                url,
                revision=pysvn.Revision( opt_revision_kind.head ),
                force=False,
                original_prop_value=None )
    

    set the revision property prop_name to prop_value in path. The old prop value is returned.

    If original_prop_value is specified its string value is compared to the current value of the property and only if it matches does the revpropset succeed.

    pysvn.Client.set_adm_dir

    set_adm_dir( name )
    

    Set the name of the subverion admin directory. ".svn" is the normal admin dir use and "_svn" is used on Windows to work around problems with .NET.

    pysvn.Client.set_auth_cache

    set_auth_cache( enable )
    

    When enable is True subversion will remember authentication credentials in the configuration directory.

    pysvn.Client.set_auto_props

    set_auto_props( enable )
    

    When enabled, subversion will automatically set properties when adding files; otherwise when disabled it will not.

    pysvn.Client.set_default_password

    set_default_password( password )
    

    Set the default password to be used if there is no stored password.

    pysvn.Client.set_default_username

    set_default_username( username )
    

    Set the default username to be used if there is no stored username.

    pysvn.Client.set_interactive

    set_interactive( enable )
    

    When enable is True subversion will prompt for authentication credentials when there are no valid store credentials.

    pysvn.Client.set_store_passwords

    set_store_passwords( enable )
    

    When enable is True subversion will store any passwords that subversion prompted for.

    pysvn.Client.status2

    status_list = \
    status2( path,
             recurse=True,
             get_all=True,
             update=False,
             ignore=False,
             ignore_externals=False,
             depth=depth,
             changelist=[],
             depth_as_sticky=False,
             check_out_of_date=update,
             check_working_copy=True )
    

    If path is a directory status is returned for all files in the directory in status_list. If path is a single file status is returned for that single file in status_list. Set ignore_externals to True to ignore externals definitions.

    The status_list is a list of PysvnStatus objects.

    Options:

    • recurse - If recurse is True, recurse fully, else do only immediate children.
    • get_all - If get_all is True, retrieve all entries; otherwise, retrieve only "interesting" entries (local mods and/or out-of-date).
    • update - If update is set, contact the repository and augment the status structures with information about out-of-dateness.
    • ignore - If ignore is False, the item will be added regardless of whether it is ignored.
    • ignore_externals - If ignore_externals is False, then recurse into externals definitions (if any exist) after handling the main target. This calls the client notification function with the wc_notify_action.external action before handling each externals definition, and with wc_notify_action.completed after each.
    • depth - can be used as in place of recurse. depth is one of the pysvn.depth enums.
    • If check_out_of_date is set, contact the repository and augment the status structures with information about out-of-dateness (with respect to revision). Also, if result_rev is not NULL, set *result_rev to the actual revision against which the working copy was compared ( result_rev is not meaningful unless check_out_of_date is True). check_out_of_date deafults to the value of update.
    • If check_working_copy is not set, do not scan the working copy for local modifications. This parameter will be ignored unless check_out_of_date is set. When set, the status report will not contain any information about local changes in the working copy; this includes local deletions and replacements.

    pysvn.Client.status

    status_list = \
    status( path,
            recurse=True,
            get_all=True,
            update=False,
            ignore=False,
            ignore_externals=False,
            depth=depth )
    

    New code should use status2() as it is more capable. The subversion API that pysvn uses to implement status() has been depecated by subversion.

    If path is a directory status is returned for all files in the directory in status_list. If path is a single file status is returned for that single file in status_list. Set ignore_externals to True to ignore externals definitions.

    The status_list is a list of PysvnStatus objects.

    Options:

    • recurse - If recurse is True, recurse fully, else do only immediate children.
    • get_all - If get_all is True, retrieve all entries; otherwise, retrieve only "interesting" entries (local mods and/or out-of-date).
    • update - If update is set, contact the repository and augment the status structures with information about out-of-dateness.
    • ignore - If ignore is False, the item will be added regardless of whether it is ignored.
    • ignore_externals (svn 1.2.0 or later) - If ignore_externals is False, then recurse into externals definitions (if any exist) after handling the main target. This calls the client notification function with the wc_notify_action.external action before handling each externals definition, and with wc_notify_action.completed after each.
    • depth - can be used as in place of recurse. depth is one of the pysvn.depth enums.

    pysvn.Client.switch

    switch( path,
            url,
            recurse=True,
            revision=pysvn.Revision( opt_revision_kind.head ),
            depth=depth,
            peg_revision=revision,
            depth_is_sticky=False,
            ignore_externals=False,
            allow_unver_obstructions=False,
            ignore_ancestry=False )
    

    Update the working copy to a different URL.

    The depth can be used as in place of recurse. depth is one of the pysvn.depth enums.

    If depth_is_sticky is set and depth is not svn_depth_unknown, then in addition to switching PATH, also set its sticky ambient depth value to depth.

    If ignore_externals is set, do not process externals definitions as part of this operation.

    If allow_unver_obstructions is True then the switch tolerates existing unversioned items that obstruct added paths. Only obstructions of the same type (file or dir) as the added item are tolerated. The text of obstructing files is left as-is, effectively treating it as a user modification after the switch. Working properties of obstructing items are set equal to the base properties.

    If allow_unver_obstructions is False then the switch will abort if there are any unversioned obstructing items.

    1. Update the working copy to mirror a new URL. This behaviour is a superset of "svn update". Note: this is the way to move a working copy to a new branch.
    2. Reconnect the working copy when the repository URL has changed.

    pysvn.Client.unlock

    unlock( url_or_path,
            force=False )
    

    Unlock the url_or_path. Set force to True to unlock any lock held by another user.

    pysvn.Client.update

    revision = \
    update( path,
            recurse=True,
            revision=pysvn.Revision( opt_revision_kind.head ),
            ignore_externals=False,
            depth=depth,
            depth_is_sticky=False,
            allow_unver_obstructions,
            adds_as_modifications=False,
            make_parents=False )
    

    Update the file in the working copy at path to the specified revision. Set recurse to True to recursively update a directory's children. Set ignore_externals to True to ignore externals definitions.

    path can be a single path string or a list of path strings.

    The depth can be used in place of recurse. depth is one of the pysvn.depth enums. Use pysvn.depth.unknown to update all files and folders in the working copy honoring the current depths. Use pysvn.depth.infinity to upadate all files and folders adding any that are missing ignoring the current depths.

    If depth_is_sticky is set and depth is not svn_depth_unknown, then in addition to updating PATHS, also set their sticky ambient depth value to depth.

    If allow_unver_obstructions is True then the update tolerates existing unversioned items that obstruct added paths. Only obstructions of the same type (file or dir) as the added item are tolerated. The text of obstructing files is left as-is, effectively treating it as a user modification after the update. Working properties of obstructing items are set equal to the base properties. If allow_unver_obstructions is False then the update will abort if there are any unversioned obstructing items.

    If adds_as_modification is True, a local addition at the same path as an incoming addition of the same node kind results in a normal node with a possible local modification, instead of a tree conflict.

    If make_parents is True, create any non-existent parent directories also by checking them out at depth=empty.

    update returns a pysvn.Revision containing the number of the revision the working copy was updated to.

    This command is typically used to get the latest changes from the repository.

    Note: updating to an older revision does not change the current revision. To make the current version identical to an older revision, use a merge followed by a commit.

    pysvn.Client.upgrade

    upgrade( path )
    

    Recursively upgrade a working copy from any older format to the current WC metadata storage format. path is the path to the WC root.

    pysvn.Transaction - Subversion transaction interface

    Interface summary:

    transaction = pysvn.Transaction()
    transaction = pysvn.Transaction( repos_path, transaction_name, [is_revision=False] )
    

    The Transaction object allows you to implement hook code for the SVN repository. The pre-commit and pre-revprop-change hooks are the only hooks that are currently appropriate in SVN. See the SVN documentation for details on hook scripts.

    A Transaction object can only be used on one thread at a time. If two threads attempt to call methods of Transaction at the same time one of the threads will get a pysvn.TransactionError exception with the value 'transaction in use on another thread'.

    When the optional parameter is_revision is True, than the transaction_name parameter will be interpreted as a revision number and all subsequent operation will be performed on this revision. Note that the propdel and propset operations will fail than. This option lets you use the Transation object to write post-commit hooks with the same API than pre-commit hooks, and lets you easily test your pre-commit hook on revisions.

    pysvn.Client.vacuum

    vacuum( path,
            remove_unversioned_items=False,
            remove_ignored_items=False,
            fix_recorded_timestamps=True,
            vacuum_pristines=True,
            include_externals=False )
    

    Clean up any locks in the working copy at path. Usually such locks are the result of a failed or interrupted operation.

    If remove_unversioned_items is True, remove unversioned items in path after successful working copy cleanup.

    If remove_ignored_items is True, remove ignored unversioned items in path after successful working copy cleanup.

    If fix_recorded_timestamps is True, this function fixes recorded timestamps for unmodified files in the working copy, reducing comparision time on future checks.

    If vacuum_pristines is True, and dir_abspath points to the working copy root unreferenced files in the pristine store are removed.

    If include_externals is True, recurse into externals and clean them up as well.

    Transaction methods

    cat changed list    
    propdel propget proplist propset
    revpropdel revpropget revproplist revpropset

    pysvn.Transaction.cat

    file_text = \
    cat( path )
    

    Return the contents of path as a string, file_text.

    pysvn.Transaction.changed

    file_text = \
    changed( copy_info=False,
             base_dir="",
             low_water_mark=pysvn.Revision( opt_revision_kind.number, -1 ),
             send_deltas=False )
    

    Return a dict of all changes in the transaction. The keys in the dict are the path names and the values are tuples containing the following:

    • action - string - a single letter indicating the action 'A' for add, 'R' for modify, 'D' for delete
    • kind - node_kind - one of the pysvn.node_kind values
    • text_mod - int - is != 0 if the text in this path has been modified
    • prop_mod - int - is != 0 if the properties in this path have been modified
    • copyfrom_rev - int - when path has been copied this is its copy from revision number
    • copyfrom_path - int - when path has been copied this is its copy from path

    Changes will be limited to those within base_dir, and if low_water_mark is set to something other than SVN_INVALID_REVNUM(-1) it is assumed that the client has no knowledge of revisions prior to low_water_mark. Together, these two arguments define the portion of the tree that the client is assumed to have knowledge of, and thus any copies of data from outside that part of the tree will be sent in their entirety, not as simple copies or deltas against a previous version.

    The editor passed to this function should be aware of the fact that, if send_deltas is False, calls to its change_dir_prop(), change_file_prop(), and apply_textdelta() functions will not contain meaningful data, and merely serve as indications that properties or textual contents were changed.

    If send_deltas is True, the text and property deltas for changes will be sent, otherwise null text deltas and empty prop changes will be used.

    Note: This editor driver passes SVN_INVALID_REVNUM (-1) for all revision parameters in the editor interface except the copyfrom parameter of the add_file() and add_directory() editor functions.

    pysvn.Transaction.list

    path_content = list( [path] )
    

    Return a dict of all entries in the directory 'path'. The keys in the dict are the path names and the value contains the kind (one of the pysvn.node_kind values). If 'path' is not given the root of the repository will be examined. This is a same as '' and '/' as path.

    pysvn.Transaction.propdel

    propdel( prop_name,
             path )
    

    Delete the property prop_name from path in the transaction.

    pysvn.Transaction.propget

    prop_value = \
    propget( prop_name,
             path )
    

    Returns the prop_value as a string or None if the prop_name is not in the transaction.

    pysvn.Transaction.proplist

    prop_dict = \
    proplist( path )
    

    Returns a prop_dict. The prop_dict contains the prop_names and their values if set on the path in the transaction.

    pysvn.Transaction.propset

    propset( prop_name,
             prop_value,
             path )
    

    Set the property prop_name to prop_value in path in the transaction.

    pysvn.Transaction.revpropdel

    revpropdel( prop_name )
    

    Delete the revision property prop_name in the transaction.

    pysvn.Transaction.revpropget

    prop_val = \
    revpropget( prop_name )
    

    Returns the prop_val with the revision property value or None if not set in the transaction.

    pysvn.Transaction.revproplist

    prop_dict = \
    revproplist()
    

    Returns a prop_dict where the prop_dict contains the revision properies and their values in the transaction.

    pysvn.Transaction.revpropset

    rev = \
    revpropset( prop_name,
                prop_value )
    

    set the revision property prop_name to prop_value in path in the transaction. The revision updated is returned.

    pysvn.Revision - subversion revision

    The Revision object has three member variables:

    • kind - the kind of revision, its value is one of the opt_revision_kind enumerations.
    • date - date and time when kind is opt_revision_kind.date, as seconds since the epoch which is compatible with python's time module.
    • number - revision number when kind is opt_revision_kind.number

    Interface summary:

    import pysvn
    import time
    
    revhead = pysvn.Revision( pysvn.opt_revision_kind.head )
    revdate = pysvn.Revision( pysvn.opt_revision_kind.date, time.time() )
    revnum = pysvn.Revision( pysvn.opt_revision_kind.number, 4721 )
    

    pysvn.ClientError - Exception class raised by client commands on error

    ClientError exception is raised when any of the subversion functions called by pysvn return an error.

    The Client.exception_style variable controls the information stored in the ClientError object.

    exception_style = 0

    The args property is set to a single string parameter containing the whole error message. '\n' is used to seperate message parts.

    Use str() to get the string description of the exception raised by pysvn.

    import pysvn
    
    client = pysvn.Client()
    client.exception_style = 0
    try:
    
        client.update( '.' )
    except pysvn.ClientError, e:
        # convert to a string
        print str(e)
        # or access the string in args directly
        print e.args
    

    exception_style = 1

    The arg property is set to a tuple contain two values.

    arg[0] is set to a string parameter containing the whole error message. '\n' is used to seperate message parts.

    arg[1] is set to a list of tuples containing the message string and the error code. The error code values are defined by SVN and APR.

    import pysvn
    
    client = pysvn.Client()
    client.exception_style = 1
    try:
    
        client.update( '' )
    except pysvn.ClientError, e:
        # print the whole message
        print e.args[0]
        # or process the error list
        for message, code in e.args[1]:
            print 'Code:',code,'Message:',message
    

    pysvn.PysvnStatus - subversion status object

    Each status object has the following fields:

    • path - string - the path name
    • entry - PysvnEntry - entry information
    • is_versioned - Boolean - true if the path is versioned
    • is_locked - Boolean - true if the path is locked
    • is_copied - Boolean - true if the path is copied
    • is_switched - Boolean - true if the path has been switched
    • prop_status - wc_status_kind - the status of the properties of the path
    • text_status - wc_status_kind - the status of the text of the path
    • repos_prop_status - wc_status_kind - the repository status of the properties of the path
    • repos_text_status - wc_status_kind - the repository status of the text of the path
    • repos_lock - dict - the repository lock information

    pysvn.PysvnEntry - subversion entry object

    • checksum - string
    • commit_author - string
    • commit_revision - pysvn.Revision
    • commit_time - time
    • conflict_new - string or None - file path
    • conflict_old - string of None - file path
    • conflict_work - string of None - file path
    • copy_from_revision - pysvn.Revision or None
    • copy_from_url - string or None
    • is_absent - boolean
    • is_copied - boolean
    • is_deleted - boolean
    • is_valid - boolean
    • kind - pysvn.node_kind
    • name - string
    • properties_time - time
    • property_reject_file - string or None
    • repos - string
    • revision - pysvn.Revision or None
    • schedule - pysvn.wc_schedule or None
    • text_time - time
    • url - string or None
    • uuid - string or None

    pysvn.opt_revision_kind - subversion revision number kind enumeration

    • unspecified - No revision information given.
    • number - revision given as number
    • date - revision given as date
    • committed - rev of most recent change
    • previous - (rev of most recent change) - 1
    • base - .svn/entries current revision
    • working - current, plus local mods
    • head - repository youngest

    pysvn.wc_notify_action - subversion notification callback action enumeration

    • add - Adding a path to revision control.
    • copy - Copying a versioned path.
    • delete - Deleting a versioned path.
    • restore - Restoring a missing path from the pristine text-base.
    • revert - Reverting a modified path.
    • failed_revert - A revert operation has failed.
    • resolved - Resolving a conflict.
    • skip - Skipping a path.
    • update_delete - Got a delete in an update.
    • update_add - Got an add in an update.
    • update_update - Got any other action in an update.
    • update_completed - The last notification in an update (including updates of externals).
    • update_external - Updating an external module.
    • status_completed - The last notification in a status (including status on externals).
    • status_external - Running status on an external module.
    • commit_modified - Committing a modification.
    • commit_added - Committing an addition.
    • commit_deleted - Committing a deletion.
    • commit_replaced - Committing a replacement.
    • commit_postfix_txdelta - Transmitting post-fix text-delta data for a file.
    • annotate_revision - Processed a single revision's blame.
    • locked - Locking a path.
    • unlocked - Unlocking a path.
    • failed_lock - Failed to lock a path.
    • failed_unlock - Failed to unlock a path.

    pysvn.wc_status_kind - subversion status kind enumeration

    • none - does not exist
    • unversioned - is not a versioned thing in this wc
    • normal - exists, but uninteresting.
    • added - is scheduled for addition
    • missing - under v.c., but is missing
    • deleted - scheduled for deletion
    • replaced - was deleted and then re-added
    • modified - text or props have been modified
    • merged - local mods received repos mods
    • conflicted - local mods received conflicting repos mods
    • ignored - a resource marked as ignored
    • obstructed - an unversioned resource is in the way of the versioned resource
    • external - an unversioned path populated by an svn:external property
    • incomplete - a directory doesn't contain a complete entries list

    pysvn.wc_merge_outcome - subversion merge outcome enumeration

    • unchanged - The working copy is (or would be) unchanged. The changes to be merged were already present in the working copy
    • merged - The working copy has been (or would be) changed.
    • conflict - The working copy has been (or would be) changed, but there was (or would be) a conflict
    • no_merge - No merge was performed, probably because the target file was either absent or not under version control.

    pysvn.wc_notify_state - subversion notify callback state enumeration

    • inapplicable - inapplicable
    • unknown - Notifier doesn't know or isn't saying.
    • unchanged - The state did not change.
    • missing - The item wasn't present.
    • obstructed - An unversioned item obstructed work.
    • changed - Pristine state was modified.
    • merged - Modified state had mods merged in.
    • conflicted - Modified state got conflicting mods.

    pysvn.wc_schedule - subversion status schedule enumeration

    • normal - Nothing special here
    • add - Slated for addition
    • delete - Slated for deletion
    • replace - Slated for replacement (delete + add)

    pysvn.node_kind - subversion node kind enumeration

    • none - absent
    • file - regular file
    • dir - directory
    • unknown - something's here, but we don't know what

    pysvn.depth - subversion depth enumeration

    • empty - Just the named directory D, no entries. Updates will not pull in any files or subdirectories not already present.
    • exclude - not used yet
    • files - D + its file children, but not subdirs. Updates will pull in any files not already present, but not subdirectories.
    • immediates - D + immediate children (D and its entries). Updates will pull in any files or subdirectories not already present; those subdirectories' this_dir entries will have depth-empty.
    • infinity - D + all descendants (full recursion from D). Updates will pull in any files or subdirectories not already present; those subdirectories' this_dir entries will have depth-infinity. Equivalent to the pre-1.5 default update behavior.
    • unknown - Depth undetermined or ignored

    Copyright © 2004-2009 Barry A. Scott. All rigths reserved.

    pysvn-1.9.22/Docs/generate_cpp_docs_from_html_docs.py000755 000765 000024 00000017112 11101103524 023224 0ustar00barrystaff000000 000000 #!/usr/bin/python import sys import os import xml.dom.minidom def main( argv ): svn_include = argv[1] html_doc = argv[2] cpp_header_filename = argv[3] cpp_module_filename = argv[4] print( 'Info: svn_include %s' % svn_include ) print( 'Info: html_doc %s' % html_doc ) print( 'Info: cpp_header_filename %s' % cpp_header_filename ) print( 'Info: cpp_module_filename %s' % cpp_module_filename ) debug.enable( '--debug' in argv ) try: parser = XhtmlParser( open( html_doc ).read() ) except ParseException as e: print( repr(e) ) print( str(e) ) return 1 parser.setSvnVersion( svn_include ) parser.htmlToCpp() cpp_header = open( cpp_header_filename, 'w' ) cpp_module = open( cpp_module_filename, 'w' ) cpp_header.write( '// Created by %s\n\n' % argv[0] ) cpp_module.write( '// Created by %s\n' % argv[0] ) cpp_module.write( '#include "pysvn_docs.hpp"\n' ) parser.writeCppDocs( cpp_header, cpp_module ) cpp_header.close() cpp_module.close() return 0 class DebugTrace: def __init__( self, enable=False ): self._enable = enable def __call__( self, *args ): if self.isEnabled(): for s in args: print( s, ) print def enable( self, enable ): self._enable = enable def isEnabled( self ): return self._enable debug = DebugTrace() class ParseException(Exception): def __init__(self, msg): Exception.__init__(self) self.msg = msg def __repr__( self ): return '' % self.msg def __str__( self ): return self.msg class XhtmlParser: def __init__( self, definition_text ): self.dom = None self.all_docs = {} self.svn_version = None try: self.dom = xml.dom.minidom.parseString( definition_text ) except xml.parsers.expat.ExpatError as e: raise ParseException( 'Ln:%d Col:%d %s' % (e.lineno, e.offset, e.args[0]) ) def htmlToCpp( self ): all_anchors = self.dom.getElementsByTagName("a") all_named_nodes = [(node.parentNode, node.getAttribute( 'name' )) for node in all_anchors if node.hasAttribute( 'name' )] for node, name in all_named_nodes: self.docsFromNode( node, name ) copyright = ''' Copyright (c) 2003-2007 Barry A Scott. All rights reserved. This software is licensed as described in the file LICENSE.txt, which you should have received as part of this distribution. ============================================================= This product includes software developed by CollabNet (http://www.Collab.Net/). ''' docs = Documentation( 'copyright' ) docs.addText( copyright ) self.all_docs[ docs.getName() ] = docs def writeCppDocs( self, cpp_header, cpp_module ): all_names = list( self.all_docs.keys() ) all_names.sort() for name in all_names: docs = self.all_docs[ name ] cpp_header.write( 'extern const char %s_doc[];\n' % name ) cpp_module.write( '\nconst char %s_doc[] =\n' % name ) for line in docs.getBody().split('\n' ): cpp_module.write( ' "%s\\n"\n' % line ) cpp_module.write( ';\n' ) def docsFromNode( self, node, name ): docs = Documentation( name ) while True: node = node.nextSibling if node is None: break if node.nodeName in ['h1','h2','h3','h4']: break self.__extractText( None, docs, node ) debug( 'docsFromNode adding %s' % name ) self.all_docs[ name ] = docs def __extractText( self, parent, docs, node ): debug( '__extractText( node=',repr(node), ')' ) if node.nodeName == 'p': docs.addText( '\n' ) if node.nodeName == 'li': docs.addText( '* ' ) for child in node.childNodes: debug('__extractText child nodeName=%s' % child.nodeName) if child.nodeType == xml.dom.minidom.Node.TEXT_NODE: debug( '__extractText TEXT_NODE: %r %r' % (node, child.data) ) if node.nodeName in ['p','li','span']: docs.addText( child.data.strip() ) elif node.nodeName in ['a']: docs.addText( '%s ' % child.data.strip() ) elif node.nodeName in ['pre']: docs.addText( child.data ) elif child.nodeType == xml.dom.minidom.Node.DOCUMENT_TYPE_NODE: #debug( '__extractText DOCUMENT_TYPE_NODE' ) pass elif child.nodeType == xml.dom.minidom.Node.PROCESSING_INSTRUCTION_NODE: #debug( '__extractText PROCESSING_INSTRUCTION_NODE' ) pass elif child.nodeType == xml.dom.minidom.Node.COMMENT_NODE: #debug( '__extractText COMMENT_NODE' ) pass elif child.nodeType == xml.dom.minidom.Node.ELEMENT_NODE: debug( '__extractText ELEMENT_NODE %r' % child.nodeName ) if child.nodeName in ['h1','h2','h3','h4']: break include_children = True # check for conditional span and div sections if child.nodeName in ['span','div']: version_class = child.getAttribute( 'class' ) if version_class.startswith( 'svn_' ): encoded_version = int( version_class[len('svn_'):] ) if debug.isEnabled(): docs.addText( '[if %d]' % encoded_version ) if encoded_version > self.svn_version: debug( 'Skipping %r > %r' % (encoded_version, self.svn_version) ) include_children = False else: debug( 'Including %r <= %r' % (encoded_version, self.svn_version) ) if include_children: self.__extractText( node, docs, child ) if node.nodeName == 'p': docs.addText( '\n' ) if node.nodeName == 'li': docs.addText( '\n' ) debug('__extractText done') return def setSvnVersion( self, svn_include ): all_svn_version_lines = open( os.path.join( svn_include, 'svn_version.h' ) ).readlines() major = None minor = None patch = None for line in all_svn_version_lines: words = line.strip().split() if len(words) > 2 and words[0] == '#define': if words[1] == 'SVN_VER_MAJOR': major = int(words[2]) elif words[1] == 'SVN_VER_MINOR': minor = int(words[2]) elif words[1] == 'SVN_VER_PATCH': patch = int(words[2]) self.svn_version = ((major * 1000) + minor) * 1000 + patch # force to the version to test with #self.svn_version = 1001000 print( 'Info: Building against SVN %d.%d.%d code %d' % (major, minor, patch, self.svn_version) ) class Documentation: def __init__( self, name ): self.name = name self.body = [] def addText( self, text ): self.body.append( text ) def getName( self ): return self.name def getBody( self ): body = ''.join( self.body ).strip() body = body.replace( '\\', '\\\\' ) body = body.replace( '"', '\\"' ) return body if __name__ == "__main__": sys.exit( main( sys.argv ) ) pysvn-1.9.22/Docs/pysvn_prog_guide.html000644 000765 000024 00000023247 10557152702 020423 0ustar00barrystaff000000 000000 pysvn Programmer's Guide

    pysvn Programmer's Guide

    This guide gives an tutorial introduction to the pysvn module.

    Complete and detailed infomation on the pysvn API is documented in pysvn Programmer's Reference.

    The pysvn module is a python interface to the Subversion version control system. This API exposes client interfaces for managing a working copy, querying a repository, and synchronizing the two.

    This API cannot create new repositories; it can only interact with existing repositories. If you need to create a repository, use the svnadmin command from Subversion.

    Using the API, you can check out a working copy, add, edit, and remove working files, and check in, compare, or discard your changes. Repository properties such as keyword expansion, end of line characters, and ignore lists can also be examined and manipulated.

    Subversion model

    Subversion operates on an update-edit-commit model. A local, working copy is created. Changes are made in the working copy, then committed to the central repository (which may be local or remote).

    This model allows and in fact expects that multiple people will occasionally edit the same file at the same time. In most cases, Subversion merges these differences without intervention. In the rare case where the differences are ambiguous, one of the commits fails, and the user or application will need to examine and resolve the differences before attempting to commit again.

    Common Tasks

    This section gives examples of common tasks using the pysvn interface. Operations applied to directories are processed recursively. Add the argument recurse=False to prevent this behavior; for example, you may want to add a directory without adding its contents.

    Check out a working copy

    import pysvn
    client = pysvn.Client()
    #check out the current version of the pysvn project
    client.checkout('http://localhost/example/trunk',
        './examples/pysvn')
    #check out revision 11 of the pysvn project
    client.checkout('http://localhost/example/trunk', 
       './examples/pysvn-11',
       revision=pysvn.Revision(pysvn.opt_revision_kind.number, 11))
    

    This example creates a working copy of the example project in the directory examples/pysvn. This project is used in the remaining examples.

    Add a file or directory to the repository

    import pysvn
    # write a file foo.txt
    f = file('./examples/pysvn/foo.txt', 'w')
    f.write('Sample versioned file via pithon\n')
    f.close()
    client = pysvn.Client()
    #schedule the addition; 
    #  the working copy will now track the file as a scheduled change
    client.add('./examples/pysvn/foo.txt')
    #committing the change actually adds the file to the repository
    client.checkin(['./examples/pysvn/foo.txt'], 'Adding a sample file')

    This example creates the file 'foo.txt' in the working copy, then adds it to the repository. Note that the Client.import_() command does the addition and commit in a single step. Most applications, however, queue up multiple changes and commit them together at a later time.

    Update the working copy

    import pysvn
    client = pysvn.Client()
    client.update('./examples/pysvn')

    Updating gets any changes other users have committed to the repository and applies them to your working copy. Most applications do this on a regular basis to prevent conflicts.

    Commit changes to the repository

    import pysvn
    # edit the file foo.txt
    f = open('./examples/pysvn/foo.txt', 'w')
    f.write('Sample versioned file via python\n')
    f.close()
    # checkin the change with a log message
    client = pysvn.Client()
    client.checkin(['./examples/pysvn'], 'Corrected spelling of python in foo.txt')

    Commits in Subversion are atomic. Either all scheduled changes are successfully committed, or none are. Most applications either commit all changes in the working copy, as shown in this example, or pass a list of individual files and directories that need to be committed as a unit.

    Discard changes in the working copy

    import pysvn
    # edit the file foo.txt
    f = file('./examples/pysvn/foo.txt', 'w')
    f.write('This change will never be seen\n')
    f.close()
    #discard the edits
    client = pysvn.Client()
    client.revert('./examples/pysvn/foo.txt')

    This discards any uncommitted changes in the working copy and restores a file or directory to its unedited state.

    Files that are scheduled for addition or removal remain unversioned or are restored to the working copy, respectively.

    Rename or move a file

    import pysvn
    client = pysvn.Client()
    #rename the file client side 
    client.move('./examples/pysvn/foo.txt', './examples/pysvn/foo2.txt')
    #checkin the change removes the file from the repository
    client.checkin(['./examples/pysvn/foo.txt', './examples/pysvn/foo2.txt'], 'Foo has become Foo2')
    

    Moving or renaming a file removes the file under the old path or name and adds it in the new location while preserving information about previous versions.

    In this example, we passed both filenames to Client.checkin(). Passing the parent directory would also have been effective.

    The move and checkin can be done in a single step on the server side; see the example in the Respository Tasks section.

    Remove a file or directory from the repository

    import pysvn
    client = pysvn.Client()
    #schedule the removal; 
    #  the file will be removed from the working copy
    client.remove('./examples/pysvn/foo2.txt')
    #committing the change removes the file from the repository
    client.checkin(['./examples/pysvn/foo2.txt'], 'Removing sample file')

    Some people confuse removing a file or directory from the repository with purging it completely. The file still exists in previous versions and can be retrieved by checking out or otherwise examining the contents of a previous revision.

    Files are typically removed from the working copy immediately, while directories usually remain in the working copy until the removal is committed.

    Determine pending changes

    import pysvn
    client = pysvn.Client()
    changes = client.status('./examples/pysvn')
    print 'files to be added:'
    print [f.path for f in changes if f.text_status == pysvn.wc_status_kind.added]
    print 'files to be removed:'
    print [f.path for f in changes if f.text_status == pysvn.wc_status_kind.deleted]
    print 'files that have changed:'
    print [f.path for f in changes if f.text_status == pysvn.wc_status_kind.modified]
    print 'files with merge conflicts:'
    print [f.path for f in changes if f.text_status == pysvn.wc_status_kind.conflicted]
    print 'unversioned files:'
    print [f.path for f in changes if f.text_status == pysvn.wc_status_kind.unversioned]
    

    Generating a diff or patch

    import pysvn
    client = pysvn.Client()
    diff_text = client.diff('./tmp-file-prefix-', '.')
    

    Determining the repository URL

    import pysvn
    client = pysvn.Client()
    entry = client.info('.')
    print 'Url:',entry.url
    

    Repository Tasks

    This section shows examples of tasks that manipulate or examine the repository. While the common tasks schedule changes through a local working copy, these tasks affect the repository directly.

    List the contents of a repository directory

    import pysvn
    client = pysvn.Client()
    entry_list = client.ls('.')
    

    Get the contents of a file from the repository

    import pysvn
    client = pysvn.Client()
    file_content = client.cat('file.txt')
    

    Create a branch or tag

    import pysvn
    client = pysvn.Client()
    log_message = "reason for change"
    def get_log_message():
        return True, log_message
    client.callback_get_log_message = get_log_message
    client.copy('http://svnrepo.com/svn/trunk', 'http://svnrepo.com/svn/tag/%s' % tag_name )
    

    Move or rename files in the repository

    import pysvn
    client = pysvn.Client()
    client.move( 'file_old.txt', 'file_new.txt' )
    

    Lock a file

    import pysvn
    client = pysvn.Client()
    client.lock( 'file.txt', 'reason for locking' )
    

    Lock a file overriding another user or working copies lock

    import pysvn
    client = pysvn.Client()
    client.lock( 'file.txt', 'reason for locking', force=True )
    

    Unlock a file

    import pysvn
    client = pysvn.Client()
    client.unlock( 'file.txt' )
    

    Unlock a file locked by another user or working copy

    import pysvn
    client = pysvn.Client()
    client.unlock( 'file.txt', force=True )
    

    Test for a locked file

    Method 1:

    all_entries = self.client.info2( path, recurse=False )
    for path, info in all_entries:
        if info['lock']:
            if info['lock']['token'] != '':
                print '%s is locked' % path
            print info['lock']['comment']
    

    Method 2:

    all_status = self.client.status( path, recurse=False, update=True )
    for status in all_status:
        if status.entry is not None:
            if status.entry.lock_token is not None:
                print '%s is locked' % status.path
    

    Copyright © 2004-2007 Barry A. Scott. All rigths reserved.

    pysvn-1.9.22/Docs/pysvn.html000644 000765 000024 00000007252 13520100233 016176 0ustar00barrystaff000000 000000 pysvn - Python interface to Subversion

    pysvn - Python interface to Subversion

    Documentation

    The pysvn Programmer's Guide is the best place to start learning about pysvn. It covers the use of pysvn in a tutorial style with lots of examples.

    Use the pysvn Programmer's Reference to look up the detailed descriptions of all the classes, functions and variables of pysvn.

    The python-library/site-packages/pysvn/Examples/Client/svn_cmd.py program is a complete replacement for the svn command line written using pysvn. It is a good place to look for working examples of use of all the pysvn module.

    pysvn Support

    Please use the mailing lists and the issues database on https://pysvn.sourceforge.io to report problems, suggest improvements or contribute changes.

    pysvn License

    =================================================================
    Copyright (C) 2003-2007 Barry A. Scott. All rights reserved.
    
    =================================================================
    The Apache Software License, Version 1.1
    
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
    
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in
       the documentation and/or other materials provided with the
       distribution.
    
    3. The end-user documentation included with the redistribution,
       if any, must include the following acknowledgment:
          "This product includes software developed by 
           Barry A. Scott http://www.barrys-emacs.org."
       Alternately, this acknowledgment may appear in the software itself,
       if and wherever such third-party acknowledgments normally appear.
    
    4. The names "PySVN" must not be used to endorse or promote
       products derived from this software without prior written
       permission. For written permission, please contact
       barry@barrys-emacs.org.
    
    5. Products derived from this software may not be called "PySVN",
       nor may "PySVN" appear in their name, without prior written
       permission of Barry Scott.
    
    THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
    WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
    OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
    DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
    ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
    USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
    ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
    OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
    OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    SUCH DAMAGE.
    =================================================================
    
    pysvn-1.9.22/Kit/FreeBSD/000755 000765 000024 00000000000 14527655012 015216 5ustar00barrystaff000000 000000 pysvn-1.9.22/Kit/MacOSX/000755 000765 000024 00000000000 14527655012 015076 5ustar00barrystaff000000 000000 pysvn-1.9.22/Kit/Linux/000755 000765 000024 00000000000 14527655012 015103 5ustar00barrystaff000000 000000 pysvn-1.9.22/Kit/Windows/000755 000765 000024 00000000000 14527655012 015436 5ustar00barrystaff000000 000000 pysvn-1.9.22/Kit/Windows/show_python_registry.py000644 000765 000024 00000002624 13260476640 022326 0ustar00barrystaff000000 000000 #!/usr/bin/env python3 import sys import winreg def main( argv ): for arch, view in [('Win32', winreg.KEY_WOW64_32KEY), ('Win64', winreg.KEY_WOW64_64KEY)]: for level, key in [('HKLM', winreg.HKEY_LOCAL_MACHINE), ('HKCU', winreg.HKEY_CURRENT_USER)]: # look for python in the registry try: for vendor_key in (r'SOFTWARE\Python\PythonCore', r'SOFTWARE\Python\ContinuumAnalytics'): core_key = winreg.OpenKey( key, vendor_key, 0, winreg.KEY_READ | view ) try: index = 0 while True: py_name = winreg.EnumKey( core_key, index ) py_key = winreg.OpenKey( core_key, py_name, 0, winreg.KEY_READ | view ) install_key = winreg.OpenKey( py_key, 'InstallPath', 0, winreg.KEY_READ | view ) install_path, value_type = winreg.QueryValueEx( install_key, None ) print( arch, py_name, install_path ) index += 1 except WindowsError: pass winreg.CloseKey( core_key ) except WindowsError: print( '%s not found in %s for %s' % (vendor_key, level, arch) ) if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Kit/Windows/makefile000644 000765 000024 00000001031 14527422416 017131 0ustar00barrystaff000000 000000 # # makefile - make the windows kit # !ifndef ARCH !error "ARCH must be provided" !endif !ifndef VC_VER !error "VC_VER must be provided" !endif all: kit_msvc kit_msvc: setup_kit_files.py if exist tmp rmdir /s /q tmp mkdir tmp copy ..\..\LICENSE.txt tmp\LICENSE.txt $(PYTHON) setup_kit_files.py $(ARCH) $(VC_VER) "C:\Program Files (x86)\Inno Setup 6\ISCC.exe" tmp\pysvn.iss tmp\setup_copy.cmd debug: "C:\Program Files (x86)\Inno Setup 6\Compil32.exe" pysvn.iss clean: if exist tmp rmdir /s /q tmp pysvn-1.9.22/Kit/Windows/build.cmd000644 000765 000024 00000000274 12700772116 017221 0ustar00barrystaff000000 000000 setlocal set PY_VER=%1 set SVN_VER_MAJ_MIN=%2 set BUILD_ARCH=%3 pushd .. call ..\Builder\builder_custom_init.cmd popd nmake /nologo ARCH=%BUILD_ARCH% VC_VER=%VC_VER% endlocal pysvn-1.9.22/Kit/Windows/pysvn_win32_code.iss000644 000765 000024 00000004771 12700772116 021356 0ustar00barrystaff000000 000000 function InitializeSetup(): Boolean; var install_path : string; rcb : Boolean; begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if not rcb then begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath', '', install_path ); if not rcb then begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if not rcb then begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath', '', install_path ); if not rcb then begin MsgBox( 'pysvn requires Win32 Python %(py_maj)d.%(py_min)d to be installed.' #13 #13 'Quitting installation', mbError, MB_OK ); end; end; end; end; Result := rcb; end; function pythondir(Default: String): String; var install_path : string; rcb : Boolean; begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin Result := 'c:\python%(py_maj)d.%(py_min)d'; end; end; end; end; end; pysvn-1.9.22/Kit/Windows/setup_kit_files.py000644 000765 000024 00000016015 14527422416 021204 0ustar00barrystaff000000 000000 import sys import time import os import datetime def main( argv ): print( 'Info: setup_kit_files.py' ) inno = InnoSetup( argv ) return inno.createInnoInstall() class InnoSetup: def __init__( self, argv ): self.arch = sys.argv[1] self.vc_ver = sys.argv[2] # Must not use relative parh to sources becuase DLLs will not be loaded # by python 3.8 because of the Windows trusted DLL folders feature. sys.path.insert( 0, os.path.abspath( r'..\..\Source' ) ) import pysvn self.py_maj = sys.version_info[0] self.py_min = sys.version_info[1] self.python_version_string = '%d.%d.%d' % (self.py_maj, self.py_min, sys.version_info[2]) self.pysvn_version_string = '%d.%d.%d-%d' % (pysvn.version[0], pysvn.version[1], pysvn.version[2], pysvn.version[3]) self.svn_version_package_string = '%d%d%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) self.svn_version_string = '%d.%d.%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) self.build_time = time.time() self.build_time_str = time.strftime( '%d-%b-%Y %H:%M', time.localtime( self.build_time ) ) self.year = datetime.datetime.now().year self.all_code_items = [] self.all_setup_items = [] self.all_file_items = [] self.all_icon_items = [] self.all_run_items = [] def createInnoInstall( self ): self.setupInnoItems() self.generateInnoFile() def setupInnoItems( self ): print( 'Info: Create info_before.txt' ) f = open( r'tmp\info_before.txt', 'w' ) f.write( '''PySVN %s for %s Python %s and Subversion %s Barry Scott %s ''' % (self.pysvn_version_string, self.arch, self.python_version_string, self.svn_version_string, self.build_time_str) ) f.close() print( 'Info: Create setup_copy.cmd' ) f = open( r'tmp\setup_copy.cmd', 'w' ) f.write( r'copy tmp\Output\mysetup.exe tmp\Output\py%d%d-pysvn-svn%s-%s-%s.exe' '\n' % (self.py_maj, self.py_min, self.svn_version_package_string, self.pysvn_version_string, self.arch) ) f.close() self.all_setup_items.extend( [ r'AppName=Python %(py_maj)d.%(py_min)d PySVN for %(arch)s' % self.__dict__, r'AppVerName=Python %(py_maj)d.%(py_min)d PySVN %(pysvn_version_string)s on %(arch)s' % self.__dict__, r'AppCopyright=Copyright (C) 2003-%(year)s Barry A. Scott' % self.__dict__, r'DefaultDirName={code:pythondir}\lib\site-packages\pysvn', r'DefaultGroupName=PySVN for Python %(py_maj)d.%(py_min)d on %(arch)s' % self.__dict__, r'DisableStartupPrompt=yes', r'InfoBeforeFile=info_before.txt', r'Compression=bzip/9', ] ) self.all_icon_items.extend( [ r'Name: "{group}\PySVN Documentation"; Filename: "{app}\pysvn.html";', r'Name: "{group}\PySVN License"; Filename: "{app}\pysvn_LICENSE.txt";', r'Name: "{group}\PySVN Web Site"; Filename: "https://pysvn.sourceforge.io";', ] ) self.all_file_items.extend( [ r'Source: "..\..\..\Source\pysvn\__init__.py"; DestDir: "{app}";', r'Source: "..\..\..\Source\pysvn\_pysvn_%(py_maj)d_%(py_min)d.pyd"; DestDir: "{app}"; Flags: ignoreversion;' % self.__dict__, r'Source: "..\..\..\Docs\pysvn.html"; DestDir: "{app}";', r'Source: "..\..\..\Docs\pysvn_prog_guide.html"; DestDir: "{app}";', r'Source: "..\..\..\Docs\pysvn_prog_ref.html"; DestDir: "{app}";', r'Source: "..\..\..\Docs\pysvn_prog_ref.js"; DestDir: "{app}";', r'Source: "LICENSE.txt"; DestDir: "{app}";', r'', r'Source: "..\..\..\Examples\Client\svn_cmd.py"; DestDir: "{app}\Examples\Client";', r'Source: "..\..\..\Examples\Client\parse_datetime.py"; DestDir: "{app}\Examples\Client";', ] ) for dll_name in [dll for dll in os.listdir( os.path.abspath( r'..\..\Source\pysvn' ) ) if dll.lower().endswith( '.dll' )]: dll = os.path.abspath( os.path.join( r'..\..\Source\pysvn', dll_name ) ) self.all_file_items.append( 'Source: "%s"; DestDir: "{app}"; Flags: ignoreversion' % (dll,) ) if self.vc_ver == '9.0': redist_year = '2008' elif self.vc_ver == '10.0': redist_year = '2010' elif self.vc_ver == '14.0': redist_year = '2015' elif self.vc_ver == '14.1': redist_year = '2015' elif self.vc_ver == '14.2': redist_year = '2015' else: print( 'Error: Unsupported VC_VER of %s' % (self.vc_ver,) ) return 1 if self.arch == 'Win32': redist_arch = 'x86' code_file = 'pysvn_win32_code.iss' elif self.arch == 'Win64': redist_arch = 'x64' code_file = 'pysvn_win64_code.iss' self.all_setup_items.append( 'ArchitecturesAllowed=x64' ) self.all_setup_items.append( 'ArchitecturesInstallIn64BitMode=x64' ) else: print( 'Error: Unsupported ARCH of %s' % (self.arch,) ) return 1 f = open( code_file, 'r' ) self.all_code_items.append( f.read() % self.__dict__ ) f.close() redist_file = 'vcredist_%s_%s.exe' % (redist_arch, redist_year) os.system( r'copy k:\subversion\%s tmp' % (redist_file,) ) self.all_file_items.append( 'Source: "%s"; DestDir: {tmp}; Flags: deleteafterinstall' % (redist_file,) ) self.all_run_items.append( r'Filename: {tmp}\%s; Parameters: "/q"; StatusMsg: Installing VC++ %s %s Redistributables...' % (redist_file, redist_year, self.arch) ) def generateInnoFile( self ): inno_file = r'tmp\pysvn.iss' print( 'Info: Generating %s' % (inno_file,) ) f = open( inno_file, 'w' ) f.write( '[Code]\n' ) for item in self.all_code_items: f.write( item ) f.write( '\n' ) f.write( '[Setup]\n' ) for item in self.all_setup_items: f.write( item ) f.write( '\n' ) f.write( '[Files]\n' ) for item in self.all_file_items: f.write( item ) f.write( '\n' ) f.write( '[Icons]\n' ) for item in self.all_icon_items: f.write( item ) f.write( '\n' ) f.write( '[Run]\n' ) for item in self.all_run_items: f.write( item ) f.write( '\n' ) f.write( r'[UninstallDelete]' '\n' ) f.write( r'Type: filesandordirs; Name: "{app}\__pycache__"' '\n' ) f.close() if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Kit/Windows/pysvn_win64_code.iss000644 000765 000024 00000002541 13261461407 021355 0ustar00barrystaff000000 000000 function InitializeSetup(): Boolean; var install_path : string; rcb : Boolean; begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if not rcb then begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if not rcb then begin MsgBox( 'pysvn requires Win64 Python %(py_maj)d.%(py_min)d to be installed.' #13 #13 'Quitting installation', mbError, MB_OK ); end; end; Result := rcb; end; function pythondir(Default: String): String; var install_path : string; rcb : Boolean; begin rcb := RegQueryStringValue( HKLM, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin rcb := RegQueryStringValue( HKCU, 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path ); if rcb then begin Result := install_path; end else begin Result := 'c:\python%(py_maj)d.%(py_min)d'; end; end; end; pysvn-1.9.22/Kit/Linux/make_rpm.py000644 000765 000024 00000011527 13520100233 017234 0ustar00barrystaff000000 000000 # # make_rpm.py # import os print 'Info: setup_version_handling.py' import sys sys.path.insert( 0, '../../Source') import pysvn import time pymaj, pymin, pypat, _, _ = sys.version_info python_version_string = '%d.%d.%d' % (pymaj, pymin, pypat) pysvnmaj, pysvnmin, pysvnpat, _ = pysvn.version pysvn_version_string = '%d.%d.%d-%d' % (pysvn.version[0], pysvn.version[1], pysvn.version[2], pysvn.version[3]) pysvn_version_package_release_string = '%d' % pysvn.version[3] pysvn_version_package_string = '%d.%d.%d' % (pysvn.version[0], pysvn.version[1], pysvn.version[2]) svn_version_string = '%d.%d.%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) svn_compact_version_string = '%d%d%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) build_time = time.time() build_time_str = time.strftime( '%d-%b-%Y %H:%M', time.localtime( build_time ) ) tmpdir = os.path.join( os.getcwd(), 'tmp' ) if os.path.exists( tmpdir ): print 'Info: Clean up tmp directory' os.system( 'rm -rf tmp' ) print 'Info: Create directories' for kit_dir in [ tmpdir, os.path.join( tmpdir, 'ROOT' ), os.path.join( tmpdir, 'BUILD' ), os.path.join( tmpdir, 'SPECS' ), os.path.join( tmpdir, 'RPMS' ), os.path.join( tmpdir, 'ROOT/usr' ), os.path.join( tmpdir, 'ROOT/usr/lib' ), os.path.join( tmpdir, 'ROOT/usr/lib/python%(pymaj)d.%(pymin)d' % locals() ), os.path.join( tmpdir, 'ROOT/usr/lib/python%(pymaj)d.%(pymin)d/site-packages' % locals() ), os.path.join( tmpdir, 'ROOT/usr/lib/python%(pymaj)d.%(pymin)d/site-packages/pysvn' % locals() ), os.path.join( tmpdir, 'ROOT/usr/share' ), os.path.join( tmpdir, 'ROOT/usr/share/doc' ), os.path.join( tmpdir, 'ROOT/usr/share/doc/pysvn' ), os.path.join( tmpdir, 'ROOT/usr/share/doc/pysvn/Examples' ), os.path.join( tmpdir, 'ROOT/usr/share/doc/pysvn/Examples/Client' ), ]: if not os.path.exists( kit_dir ): os.makedirs( kit_dir ) print 'Info: Copy files' kit_files_info = [ ('../../Source/pysvn/__init__.py', 'ROOT/usr/lib/python%(pymaj)d.%(pymin)d/site-packages/pysvn', '444'), ('../../Source/pysvn/_pysvn_%(pymaj)d_%(pymin)d.so' % locals(), 'ROOT/usr/lib/python%(pymaj)d.%(pymin)d/site-packages/pysvn', '444'), ('../../LICENSE.txt', 'ROOT/usr/share/doc/pysvn', '444'), ('../../Docs/pysvn.html', 'ROOT/usr/share/doc/pysvn', '444'), ('../../Docs/pysvn_prog_ref.html', 'ROOT/usr/share/doc/pysvn', '444'), ('../../Docs/pysvn_prog_ref.js', 'ROOT/usr/share/doc/pysvn', '444'), ('../../Docs/pysvn_prog_guide.html', 'ROOT/usr/share/doc/pysvn', '444'), ('../../Examples/Client/svn_cmd.py', 'ROOT/usr/share/doc/pysvn/Examples/Client', '555'), ('../../Examples/Client/parse_datetime.py', 'ROOT/usr/share/doc/pysvn/Examples/Client', '444'), ] for cp_src, cp_dst_dir_fmt, perm in kit_files_info: print 'Info: cp %s' % cp_src os.system( 'cp -f %s tmp/%s' % (cp_src, cp_dst_dir_fmt % locals()) ) print 'Info: Create tmp/SPECS/pysvn.spec' f = file('tmp/SPECS/pysvn.spec','w') f.write('''BuildRoot: %(tmpdir)s/ROOT Name: py%(pymaj)d%(pymin)d_pysvn_svn%(svn_compact_version_string)s Version: %(pysvn_version_package_string)s Group: Development/Libraries Release: %(pysvn_version_package_release_string)s Summary: pysvn %(pysvn_version_package_string)s Python extension for Subversion %(svn_version_string)s License: Apache Software License, Version 1.1 - Copyright Barry A. Scott (c) 2003-2009 Packager: Barry A. Scott %%description PySVN %(pysvn_version_string)s for Python %(python_version_string)s and Subversion %(svn_version_string)s Copyright Barry A. Scott (c) 2003-2009 mailto:barry@barrys-emacs.org https://pysvn.sourceforge.io Barry Scott %%prep %%build %%install %%post /usr/bin/python%(pymaj)d.%(pymin)d -c "import pysvn" /usr/bin/python%(pymaj)d.%(pymin)d -O -c "import pysvn" %%postun rm -f /usr/lib/python%(pymaj)d.%(pymin)d/site-packages/pysvn/__init__.pyc rm -f /usr/lib/python%(pymaj)d.%(pymin)d/site-packages/pysvn/__init__.pyo %%files %%defattr (-,root,root) ''' % locals() ) kit_filename = os.path.join( cp_dst_dir_fmt[len('ROOT'):] % locals(), os.path.basename( cp_src ) ) for cp_src, cp_dst_dir_fmt, perm in kit_files_info: kit_filename = os.path.join( cp_dst_dir_fmt[len('ROOT'):] % locals(), os.path.basename( cp_src ) ) f.write( '%%attr(%s,root,root) %s\n' % (perm, kit_filename) ) f.close() print 'Info: Create rpmrc' os.system('grep ^macrofiles: /usr/lib/rpm/rpmrc |sed -e s!~/.rpmmacros!%(tmpdir)s/rpmmacros! >%(tmpdir)s/rpmrc' % locals() ) print 'Info: Create rpmmacros' f = file( 'tmp/rpmmacros', 'w' ) f.write( '%%_topdir %(tmpdir)s' % locals() ) f.close() print 'Info: rpmbuild' os.system( 'rpmbuild --rcfile=/usr/lib/rpm/rpmrc:%(tmpdir)s/rpmrc -bb %(tmpdir)s/SPECS/pysvn.spec' % locals() ) pysvn-1.9.22/Kit/MacOSX/make_pkg.py000644 000765 000024 00000017536 14527633723 017247 0ustar00barrystaff000000 000000 # # make_pkg.py # import os print( 'Info: make_pkg' ) import sys import time import glob import subprocess sys.path.insert( 0, os.path.abspath( '../../Source' ) ) import pysvn archs = subprocess.run(['lipo', '-archs', sys.executable], capture_output=True, check=True) archs = archs.stdout.decode('utf-8').strip().split() is_x86_64 = 'x86_64' in archs is_arm64 = 'arm64' in archs if is_x86_64 and is_arm64: processor = 'universal2' elif is_x86_64: processor = 'x86_64' elif is_arm64: processor = 'arm64' else: assert False, 'Unknown processor type' python_vendor = os.environ.get( 'BUILDER_VENDOR', 'unknown' ) print( 'Info: Processor is %s' % (processor,) ) pymaj, pymin, pypat, _, _ = sys.version_info python_version_string = '%d.%d.%d' % (pymaj, pymin, pypat) pysvnmaj, pysvnmin, pysvnpat, _ = pysvn.version pysvn_version_string = '%d.%d.%d-%d' % (pysvn.version[0], pysvn.version[1], pysvn.version[2], pysvn.version[3]) pysvn_short_version_string = '%d.%d.%d' % (pysvn.version[0], pysvn.version[1], pysvn.version[2]) svn_version_package_string = '%d%d%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) svn_version_string = '%d.%d.%d' % (pysvn.svn_version[0], pysvn.svn_version[1], pysvn.svn_version[2]) pysvn_so_string = '_pysvn_%d_%d.so' % (pymaj, pymin) pkg_filename = 'py%s%s-%s-pysvn-svn%s-%s-%s' % (pymaj, pymin, python_vendor, svn_version_package_string, pysvn_version_string, processor) print( 'Info: Packaging %s' % (pkg_filename,) ) build_time = time.time() build_time_str = time.strftime( '%d-%b-%Y %H:%M', time.localtime( build_time ) ) year = time.strftime( '%Y', time.localtime( build_time ) ) tmpdir = os.path.join( os.getcwd(), 'tmp' ) install_dir = '/Library/Frameworks/Python.framework/Versions/3.%d/lib/python3.%d/site-packages' % (pymin, pymin) if os.path.exists( tmpdir ): print( 'Info: Clean up tmp directory' ) subprocess.run( ['rm', '-rf', 'tmp'], check=True ) print( 'Info: Create directories' ) for kit_dir in [ tmpdir, os.path.join( tmpdir, 'Resources' ), os.path.join( tmpdir, 'Contents' ), os.path.join( tmpdir, 'Contents/pysvn' ), os.path.join( tmpdir, pkg_filename), os.path.join( tmpdir, '%s/Examples' % (pkg_filename,) ), os.path.join( tmpdir, '%s/Examples/Client' % (pkg_filename,) ), os.path.join( tmpdir, '%s/Documentation' % (pkg_filename,) ), ]: if not os.path.exists( kit_dir ): os.makedirs( kit_dir ) print( 'Info: Finding dylibs used by pysvn' ) def findDylibs( image, dylib_list, depth=0 ): cmd = ['otool', '-L', image] #print( 'Debug: cmd %r' % (cmd,) ) rc = subprocess.run( cmd, check=True, capture_output=True ) # always skip the first line that lists the image being dumped for line in rc.stdout.decode('utf-8').split('\n'): line = line.strip() if line == '': continue libpath = line.split()[0] #print( 'Debug: line %r' % (line,) ) if( libpath.startswith( '/' ) # lines with libs on them and not libpath.startswith( '/usr/lib' ) # ignore libs shipped by Apple and not libpath.startswith( '/System' ) # ignore libs shipped by Apple and not libpath.endswith( '/Python' ) ): # do not need ignore python if libpath not in dylib_list: #print( 'Info: ',depth,' Need lib',libpath,'for',image ) dylib_list.append( libpath ) findDylibs( libpath, dylib_list, depth+1 ) dylib_list = [] findDylibs( '../../Source/pysvn/%s' % (pysvn_so_string,), dylib_list ) print( 'Info: Copy files' ) cp_list = [ ('../../Source/pysvn/__init__.py', 'Contents/pysvn'), ('../../Source/pysvn/%s' % (pysvn_so_string,), 'Contents/pysvn'), ('../../LICENSE.txt', 'Resources/License.txt'), ('../../LICENSE.txt', '%s/License.txt' % (pkg_filename,) ), ('../../Docs/pysvn.html', '%s/Documentation' % (pkg_filename,) ), ('../../Docs/pysvn_prog_ref.html', '%s/Documentation' % (pkg_filename,) ), ('../../Docs/pysvn_prog_ref.js', '%s/Documentation' % (pkg_filename,) ), ('../../Docs/pysvn_prog_guide.html', '%s/Documentation' % (pkg_filename,) ), ('../../Examples/Client/svn_cmd.py', '%s/Examples/Client' % (pkg_filename,) ), ('../../Examples/Client/parse_datetime.py', '%s/Examples/Client' % (pkg_filename,) ), ] for libpath in dylib_list: cp_list.append( (libpath, 'Contents/pysvn') ) for cp_src, cp_dst_dir_fmt in cp_list: cmd = ['cp', '-f', cp_src, 'tmp/%s' % (cp_dst_dir_fmt % locals(),)] print( 'Info: CMD %r' % (cmd,) ) subprocess.run( cmd, check=True ) for dylib in glob.glob( 'tmp/Contents/pysvn/*.dylib' ): # all the dylib need to be writable cmd = ['chmod', '+w', dylib] print( 'Info: CMD %r' % (cmd,) ) subprocess.run( cmd, check=True ) print( 'Info: Fix the install paths for the dylib files' ) fixup_path_list = ['tmp/Contents/pysvn/%s' % pysvn_so_string] for libpath in dylib_list: fixup_path_list.append( 'tmp/Contents/pysvn/' + os.path.basename( libpath ) ) for fixup_path in fixup_path_list: for libpath in dylib_list: if libpath != fixup_path: cmd = ['install_name_tool', '-change', libpath, '%s/pysvn/%s' % (install_dir, os.path.basename( libpath )), fixup_path] print( 'Info: CMD %s' % (cmd,) ) subprocess.run( cmd, check=True ) for dylib in glob.glob( 'tmp/Contents/pysvn/*.dylib' ): # can now remove the +w cmd = ['chmod', '-w', dylib] print( 'Info: CMD %r' % (cmd,) ) subprocess.run( cmd, check=True ) if python_vendor == 'apple_com': readme_vendor_name = "Apple's" elif python_vendor == 'python_org': readme_vendor_name = "Python.org's" else: readme_vendor_name = python_vendor print( 'Info: Create tmp/Resources/ReadMe.txt' ) with open( 'tmp/%s/ReadMe.txt' % (pkg_filename,), 'w' ) as f: f.write('''

    PySVN %(pysvn_version_string)s for Mac OS X, %(readme_vendor_name)s Python %(pymaj)s.%(pymin)s and Subversion %(svn_version_string)s

    Copyright Barry A. Scott (c) 2003-%(year)s

    Mail barry@barrys-emacs.org

    Pysvn home https://pysvn.sourceforge.io

         Barry Scott

    ''' % locals() ) print( 'Info: Create installation script' ) with open( 'tmp/%s/Install PySVN' % (pkg_filename,), 'w' ) as f: f.write( '''#!/bin/bash if [ "$( id -u )" != "0" ] then clear echo "To install PYSVN required root (administrator) privileges." echo "Enter your password to proceed." exec sudo "$0" fi kit_dir=$( dirname "$0" ) echo "Installing pysvn Extension %(pysvn_version_string)s for Python %(pymaj)s.%(pymin)s" tar xzf "${kit_dir}/%(pkg_filename)s.tar.gz" -C "%(install_dir)s" echo "Installation complete. Press RETURN to exit." read A ''' % locals() ) subprocess.run( ['chmod', '+x', 'tmp/%s/Install PYSVN' % (pkg_filename,)], check=True ) cmd = ['tar', 'czf', 'tmp/%s/%s.tar.gz' % (pkg_filename, pkg_filename), '-C' 'tmp/Contents', 'pysvn'] subprocess.run( cmd, check=True ) print( 'Info: Make Disk Image' ) # hdiutil will randomly fail with resource unavailable error # consensus is to keep retrying till it works created = False cmd = ['hdiutil', 'create', '-srcfolder', 'tmp/%s' % (pkg_filename,), 'tmp/tmp.dmg'] print( 'Info: CMD %r' % (cmd,) ) for _ in range(6): rc = subprocess.run( cmd ) if rc.returncode == 0: created = True break time.sleep( 10 ) if not created: print( 'Error: failed to create DMG' ) sys.exit( 1 ) cmd = ['hdiutil', 'convert', 'tmp/tmp.dmg', '-format', 'UDZO', '-imagekey', 'zlib-level=9', '-o', 'tmp/%s.dmg' % (pkg_filename,)] print( 'Info: CMD %r' % (cmd,) ) subprocess.run( cmd ) pysvn-1.9.22/Tests/test-11.win32.known_good-py2-svn1.13.log000644 000765 000024 00000003526 13566476551 023224 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.13.log000644 000765 000024 00000174242 13566476551 023250 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 1 2| r6 | barry | 2018-04-01T11:10:54.145616Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 6 2| r4 | barry | 2018-04-01T11:10:51.150123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 12:10:58 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Text Last Updated: 01-Apr-2018 12:10:55 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 12:10:59 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 12:10:54 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 12:10:52 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 12:10:51 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 12:10:50 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 12:10:54 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 12:10:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T11:11:09.147406Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 12:10:58 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.9.log000644 000765 000024 00000013566 12564665666 023211 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.10.log000644 000765 000024 00000011325 13260120165 023215 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.5.log000644 000765 000024 00000001411 11255417030 023133 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.4.log000644 000765 000024 00000014760 11331322163 023122 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt U b:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:24 Lock Token: opaquelocktoken:01ee0e7b-022a-8b4d-8cd4-82d52a2125a2 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: b:/wc2/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:26 Lock Token: opaquelocktoken:a24fb0d6-0286-0040-9fa4-2feb7c02c4fa Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 16:21:23 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test M K 3 3 barry b:\wc2\test\file1.txt M 3 3 barry b:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test K 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U b:/wc1 U b:/wc1/test U b:/wc1/test/file1.txt U b:/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 4 4 barry b:\wc1\test 4 4 barry b:\wc1\test\file1.txt 4 4 barry b:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:27 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test_07_copy2.py000644 000765 000024 00000002266 11076210000 017314 0ustar00barrystaff000000 000000 import pysvn import sys c = pysvn.Client( sys.argv[1] ) c.exception_style = 1 src_list = [ ('file_a1.txt',), ('file_a2.txt',), ] print( 'Info: Copy2 with no revision and no peg_revision' ) c.copy2( src_list, 'wc_copy_1', make_parents=True, copy_as_child=True ) src_list = [ ('file_a1.txt', pysvn.Revision( pysvn.opt_revision_kind.number, 4 )), ('file_a2.txt', pysvn.Revision( pysvn.opt_revision_kind.number, 4 )), ] print( 'Info: Copy2 with no peg_revision' ) c.copy2( src_list, 'wc_copy_2', make_parents=True, copy_as_child=True ) src_list = [ ('file_a1.txt', pysvn.Revision( pysvn.opt_revision_kind.number, 4 ), pysvn.Revision( pysvn.opt_revision_kind.number, 4 )), ('file_a2.txt', pysvn.Revision( pysvn.opt_revision_kind.number, 4 ), pysvn.Revision( pysvn.opt_revision_kind.number, 4 )), ] print( 'Info: Copy2' ) c.copy2( src_list, 'wc_copy_3', make_parents=True, copy_as_child=True ) print( 'Info: Copy2 will raise error' ) try: c.copy2( src_list, 'wc_copy_3', make_parents=True ) except pysvn.ClientError as e: print( 'Info: Error: %r' % e.args[0] ) for message, code in e.args[1]: print( 'Info: Code: %d, Message: %r' % (code, message) ) pysvn-1.9.22/Tests/test-09.cmd000644 000765 000024 00000006003 14046474103 016244 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-09.cmd @rem test annotate, annotate2 and status2 @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-09 call :cmd_shell subst b: %CD%\testroot-09 call :cmd_shell cd /d b:\ call :cmd_shell mkdir tmp set TMPDIR=b:\tmp call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-09 add trunk" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd /d b:\wc1 echo Info: Setup - add files and folders call :cmd_pysvn mkdir folder1 call :cmd_createfile folder1\file-a.txt test add file 1 call :cmd_pysvn add folder1\file-a.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_appendfile folder1\file-a.txt test add line 2 call :cmd_pysvn checkin -m "add line 2" call :cmd_pysvn diff folder1\file-a.txt >b:\diff-1.patch call :cmd_pysvn annotate folder1\file-a.txt call :cmd_pysvn annotate2 folder1\file-a.txt echo Info: propset_local call :cmd_pysvn propset_local svn:eol native folder1/file-a.txt call :cmd_pysvn proplist --verbose folder1/file-a.txt call :cmd_pysvn checkin -m "eol is native" call :cmd_pysvn propdel_local svn:eol folder1/file-a.txt call :cmd_pysvn proplist --verbose folder1/file-a.txt call :cmd_pysvn checkin -m "remove eol" call :cmd_pysvn "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" call :cmd_pysvn proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt call :cmd_pysvn "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" call :cmd_pysvn proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt call :cmd_pysvn update call :cmd_shell cd /d folder1 call :cmd_createfile unversioned.txt empty call :cmd_pysvn status2 call :cmd_pysvn status2 --verbose call :cmd_pysvn status2 --verbose --quiet call :cmd_pysvn lock file-a.txt call :cmd_pysvn status2 call :cmd_pysvn status2 --verbose call :cmd_pysvn status2 --verbose --quiet goto :eof :cmd_shell echo. echo Info: CMD %* %* exit /b :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% exit /b :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% exit /b :cmd__echo echo %* exit /b :cmd_pysvn echo. 1>&2 echo Info: PYSVN CMD %* 1>&2 %PYSVN% %* exit /b endlocal pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.6.log000644 000765 000024 00000005462 11723221274 023134 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A file_b2.txt The system cannot find the batch label specified - cmd_pysvn Info: PYSVN CMD status --verbose b:/wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file_a1.txt 4 4 barry b:\wc1\test\file_a2.txt 5 5 barry b:\wc1\test\file_b1.txt A 0 -1 None b:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one file_a1.txt changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_a1.txt changelist-one file_b1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.10.log000644 000765 000024 00000042274 13260120165 023221 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.14.log000644 000765 000024 00000002602 13660472625 023212 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.13.log000644 000765 000024 00000001411 13566476551 023236 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-06.sh000755 000765 000024 00000003207 13262407737 016126 0ustar00barrystaff000000 000000 #!/bin/bash # # test-06.sh # test info and info2 # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-06 cmd cd testroot-06 TESTROOT=${WORKDIR}/Tests/testroot-06 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-06 add trunk" cmd_pysvn mkdir file://${TESTROOT}/repos/trunk/test -m "test-06 add test" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1/test echo Info: Setup - add files echo test add file 1 >file1.txt echo test add file 2 >file2.txt cmd_pysvn add file1.txt cmd_pysvn add file2.txt cmd_pysvn checkin -m "commit added files" echo Info: Test - info of path cmd_pysvn info file1.txt echo Info: Test - info2 of path cmd_pysvn info2 file1.txt echo Info: Test - info2 of URL cmd_pysvn info --revision HEAD file://${TESTROOT}/repos/trunk/test/file1.txt echo Info: Test - info2 of URL cmd_pysvn info2 --revision HEAD file://${TESTROOT}/repos/trunk/test/file1.txt true pysvn-1.9.22/Tests/test-11.unix.known_good-py3-svn1.12.log000644 000765 000024 00000006625 13461042336 023230 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.12.log000644 000765 000024 00000005174 13461042336 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.13.log000644 000765 000024 00000005174 13566476551 023225 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-11.unix.known_good-py3-svn1.13.log000644 000765 000024 00000006625 13566476551 023251 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.5.log000644 000765 000024 00000027312 11255417030 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Users/barry/bin/python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Users/barry/bin/python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:20 Lock Token: opaquelocktoken:c3104da4-2f7d-490c-8590-65d020e0a4c6 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:24 Lock Token: opaquelocktoken:a2aaf3f2-f065-4f75-b7f8-dc67885687a4 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 19:07:18 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:26 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.12.log000644 000765 000024 00000001411 13461042336 023215 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.14.log000644 000765 000024 00000015721 13660472625 023246 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T11:40:39.286366Z | test add file 1 2| r3 | barry | 2018-04-01T11:40:40.138169Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.11.log000644 000765 000024 00000042274 13404261102 023217 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.7.log000644 000765 000024 00000006122 12573522653 023140 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python34.win32\python.exe Username: barry Info: PYSVN CMD c:\python34.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-08.cmd000644 000765 000024 00000004711 14046474103 016247 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-08.cmd @rem test patch @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-08 call :cmd_shell subst b: %CD%\testroot-08 call :cmd_shell cd /d b:\ call :cmd_shell mkdir tmp set TMPDIR=b:\tmp call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-08 add trunk" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd /d b:\wc1 echo Info: Setup - add files and folders call :cmd_pysvn mkdir folder1 call :cmd_pysvn mkdir folder2 call :cmd_pysvn mkdir folder2\sub2 call :cmd_createfile folder1\file-a.txt test add file 1 call :cmd_pysvn add folder1\file-a.txt call :cmd_createfile folder2\file-b.txt test add file 2 call :cmd_pysvn add folder2\file-b.txt call :cmd_createfile folder2\sub2\file-b.txt test add file 2 call :cmd_pysvn add folder2\sub2\file-b.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_appendfile folder1\file-a.txt test add line 2 call :cmd_pysvn diff folder1\file-a.txt >b:\diff-1.patch call :cmd_shell type b:\diff-1.patch call :cmd_shell type folder1\file-a.txt call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc2 call :cmd_shell cd /d b:\wc2 call :cmd_shell type folder1\file-a.txt echo on call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles call :cmd_shell type folder1\file-a.txt call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. 1>&2 echo Info: PYSVN CMD %* 1>&2 %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.5.log000644 000765 000024 00000015001 11331322163 023110 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Username: barry Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt U b:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:24 Lock Token: opaquelocktoken:01ee0e7b-022a-8b4d-8cd4-82d52a2125a2 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: b:/wc2/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:26 Lock Token: opaquelocktoken:a24fb0d6-0286-0040-9fa4-2feb7c02c4fa Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 16:21:23 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test M K 3 3 barry b:\wc2\test\file1.txt M 3 3 barry b:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test K 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U b:/wc1 U b:/wc1/test U b:/wc1/test/file1.txt U b:/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 4 4 barry b:\wc1\test 4 4 barry b:\wc1\test\file1.txt 4 4 barry b:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:27 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.11.log000644 000765 000024 00000011325 13404261102 023213 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.8.log000644 000765 000024 00000012742 12264262155 023162 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python /home/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.12.log000644 000765 000024 00000174242 13461042336 023227 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 1 2| r6 | barry | 2018-04-01T11:10:54.145616Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 6 2| r4 | barry | 2018-04-01T11:10:51.150123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 12:10:58 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Text Last Updated: 01-Apr-2018 12:10:55 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 12:10:59 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 12:10:54 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 12:10:52 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 12:10:51 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 12:10:50 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 12:10:54 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 12:10:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T11:11:09.147406Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 12:10:58 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py2-svn1.12.log000644 000765 000024 00000003526 13461042336 023203 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-11.win32.known_good-py2-svn1.10.log000644 000765 000024 00000003526 13262413347 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.10.log000644 000765 000024 00000174242 13260152535 023225 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 1 2| r6 | barry | 2018-04-01T11:10:54.145616Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 6 2| r4 | barry | 2018-04-01T11:10:51.150123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 12:10:58 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Text Last Updated: 01-Apr-2018 12:10:55 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 12:10:59 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 12:10:54 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 12:10:52 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 12:10:51 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 12:10:50 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 12:10:54 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 12:10:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T11:11:09.147406Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 12:10:58 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.14.log000644 000765 000024 00000004720 13660472625 023217 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.7.log000644 000765 000024 00000015261 12164357546 023144 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 62fedaee-3de9-bc44-925e-c3f77b65eb00 Last changed author: barry Last Changed Date: 01-Jul-2013 20:45:06 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Jul-2013 20:45:06 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 62fedaee-3de9-bc44-925e-c3f77b65eb00 Last changed author: barry Last Changed Date: 01-Jul-2013 20:45:06 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Jul-2013 20:45:07 Lock Token: opaquelocktoken:7a9a769a-b629-a543-a2eb-505b04676ac4 Lock Comment: Schedule: normal Text Last Updated: 01-Jul-2013 20:45:06 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 62fedaee-3de9-bc44-925e-c3f77b65eb00 Last changed author: barry Last Changed Date: 01-Jul-2013 20:45:06 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Jul-2013 20:45:07 Lock Token: opaquelocktoken:02ae8099-35ad-3c44-8c5f-bd748120aedc Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Jul-2013 20:45:06 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 62fedaee-3de9-bc44-925e-c3f77b65eb00 Last changed author: barry Last Changed Date: 01-Jul-2013 20:45:07 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.6.log000644 000765 000024 00000001411 11253135715 023141 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.13.log000644 000765 000024 00000011325 13566476551 023246 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.9.log000644 000765 000024 00000007727 13437262373 023157 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2019-03-04T17:31:04.055917Z | test add file 1 2| r3 | barry | 2019-03-04T17:31:04.446542Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.13.log000644 000765 000024 00000042274 13566476551 023252 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.5.log000644 000765 000024 00000005556 11255444226 023143 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry Info: PYSVN CMD c:\python31\python.exe C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A file_b2.txt The system cannot find the batch label specified - cmd_pysvn Info: PYSVN CMD status --verbose b:/wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file_a1.txt 4 4 barry b:\wc1\test\file_a2.txt 5 5 barry b:\wc1\test\file_b1.txt A 0 -1 None b:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt changelist-one file_a1.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_b1.txt changelist-one file_a1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.10.log000644 000765 000024 00000001411 13260120165 023205 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.9.log000644 000765 000024 00000042274 12705477130 023163 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.7.log000644 000765 000024 00000031412 11646632567 023165 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 52fb8599-0a0b-468a-9ced-0767d0e3dfd8 Last changed author: barry Last Changed Date: 16-Oct-2011 20:46:49 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 16-Oct-2011 20:46:49 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 52fb8599-0a0b-468a-9ced-0767d0e3dfd8 Last changed author: barry Last Changed Date: 16-Oct-2011 20:46:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 16-Oct-2011 20:46:51 Lock Token: opaquelocktoken:2fd12ce4-22ff-4606-818a-8a098a04afe6 Lock Comment: Schedule: normal Text Last Updated: 16-Oct-2011 20:46:49 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 52fb8599-0a0b-468a-9ced-0767d0e3dfd8 Last changed author: barry Last Changed Date: 16-Oct-2011 20:46:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 16-Oct-2011 20:46:52 Lock Token: opaquelocktoken:63754c79-27fe-41f5-ae95-32203f788e85 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 16-Oct-2011 20:46:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 52fb8599-0a0b-468a-9ced-0767d0e3dfd8 Last changed author: barry Last Changed Date: 16-Oct-2011 20:46:52 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-11.unix.known_good-py3-svn1.11.log000644 000765 000024 00000006625 13404261102 023216 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.11.log000644 000765 000024 00000005174 13404261102 023172 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.10.log000644 000765 000024 00000005342 14046541473 023205 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-11.unix.known_good-py3-svn1.10.log000644 000765 000024 00000006625 13262407737 023237 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.6.log000644 000765 000024 00000030654 11253135715 023156 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Mar-2009 14:58:20 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Mar-2009 14:58:22 Lock Token: opaquelocktoken:0939893a-7e80-44d4-ae76-cccbb5c5a023 Lock Comment: Schedule: normal Text Last Updated: 01-Mar-2009 14:58:20 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Mar-2009 14:58:23 Lock Token: opaquelocktoken:ff31e1cb-cae4-435d-98b2-f693fa6c2e39 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Mar-2009 14:58:21 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:23 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.14.log000644 000765 000024 00000006466 14046474103 023222 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/run_test.cmd000644 000765 000024 00000000154 12573331527 016710 0ustar00barrystaff000000 000000 nmake -f win32.mak SVN_VER_MAJ_MIN=%SVN_VER_MAJ_MIN% KNOWN_GOOD_VERSION=py%PY_MAJ%-svn%SVN_VER_MAJ_MIN% %* pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.8.log000644 000765 000024 00000044233 12705411537 023156 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-19T11:10:40.411656Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T11:10:40.468783Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-19T11:10:41.186150Z svn:log: Add two files svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T11:10:41.345239Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-19T11:10:42.140600Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T11:10:42.195617Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-19T11:10:43.142282Z svn:log: Delete one file svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T11:10:43.187778Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-19T11:10:45.084009Z svn:log: Copy one file svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T11:10:45.132995Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.11.log000644 000765 000024 00000001411 13404261102 023203 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-pysvn.cmd000644 000765 000024 00000000551 12573331527 017202 0ustar00barrystaff000000 000000 rem test 01 test commands call test-01.cmd >test-01.new.log 2>&1 rem test 02 is not a regression test rem can only run 03 on barry's LAN if "%USERNAME%" == "barry" call test-03.cmd >test-03.new.log 2>&1 python benchmark_diff test-01.known_good.log test-01.new.log if "%USERNAME%" == "barry" python benchmark_diff test-03.known_good.log test-03.new.log pysvn-1.9.22/Tests/test_callbacks.py000644 000765 000024 00000005427 11134663607 017717 0ustar00barrystaff000000 000000 src_dir='../../Source' import os if not os.path.exists( os.path.join( src_dir, 'pysvn/__init__.py' ) ): raise RuntimeError('Where is the pysvn module? pwd=%s' % os.getcwd() ) import sys sys.path.insert( 0, src_dir ) import pysvn class Test: def __init__( self ): self.pass_count = 0 self.fail_count = 0 def test( self ): self.test_1() print( 'Info: Passed %d' % self.pass_count ) if self.fail_count > 0: print( 'Info: FAILED %d' % self.pass_count ) return self.fail_count == 0 def info( self, msg ): print( 'Info: %s' % msg ) def passed( self ): print( 'Info: passed' ) self.pass_count += 1 def failed( self, msg ): print( 'Error: FAILED %s' % msg ) self.fail_count += 1 def test_1( self ): self.client = pysvn.Client( 'configdir' ) self.info( 'Client created' ) self.test_1_sub1( 'callback_get_login required' ) self.client.callback_get_login = get_login_bad self.test_1_sub1( 'unhandled exception in callback_get_login' ) self.client.callback_get_login = get_login_good self.test_1_sub1( 'callback_get_log_message required' ) self.client.callback_get_log_message = get_log_message_bad self.test_1_sub1( 'unhandled exception in callback_get_log_message' ) self.client.callback_get_log_message = get_log_message_good self.test_1_sub1() self.client.remove( 'http://liara/svn/barrys-test-lib/trunk/fred/testing/bar99.txt' ) def test_1_sub1( self, expected=None ): try: self.info( 'Expecting error %s' % expected ) self.client.copy( 'http://liara/svn/barrys-test-lib/trunk/fred/testing/bar.txt', 'http://liara/svn/barrys-test-lib/trunk/fred/testing/bar99.txt' ) except pysvn.ClientError as e: if expected is None: self.failed( 'unexpected exception: %s' % e ) if str(e) == expected: self.passed() else: self.failed( 'unexpected exception: %s' % e ) return if expected is not None: self.failed( 'expected exception' ) def get_login_bad( realm, username, may_save ): # bad because of undefined retcode return retcode, username, password, save def get_login_good( realm, username, may_save ): return True, username, 'fred', may_save def get_log_message_bad(): # bad because of undefined bad_var return bad_var def get_log_message_good(): return True, 'test_03 reason' if __name__ == '__main__': t = Test() if t.test(): sys.exit( 0 ) else: sys.exit( 1 ) pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.12.log000644 000765 000024 00000042274 13461042336 023231 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.8.log000644 000765 000024 00000007476 13070506350 023144 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2017-04-03T17:54:23.259305Z | test add file 1 2| r3 | barry | 2017-04-03T17:54:23.969713Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.7.log000644 000765 000024 00000001411 11646632567 023157 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.12.log000644 000765 000024 00000011325 13461042336 023225 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.6.log000644 000765 000024 00000015117 11723221274 023127 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt U b:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e3fc991c-be68-a646-aad7-03fed51bb128 Last changed author: barry Last Changed Date: 28-Feb-2012 12:55:39 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 28-Feb-2012 12:55:38 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e3fc991c-be68-a646-aad7-03fed51bb128 Last changed author: barry Last Changed Date: 28-Feb-2012 12:55:39 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 28-Feb-2012 12:55:40 Lock Token: opaquelocktoken:df9c8d78-afcf-0746-8912-9b4587a68aed Lock Comment: Schedule: normal Text Last Updated: 28-Feb-2012 12:55:38 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M b:/wc2/test/file1.txt M b:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: b:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e3fc991c-be68-a646-aad7-03fed51bb128 Last changed author: barry Last Changed Date: 28-Feb-2012 12:55:39 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 28-Feb-2012 12:55:41 Lock Token: opaquelocktoken:6f7bc6be-f992-f642-a7f0-f1b0b195c75b Lock Comment: Stealing lock Schedule: normal Text Last Updated: 28-Feb-2012 12:55:39 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test M K 3 3 barry b:\wc2\test\file1.txt M 3 3 barry b:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M b:/wc2/test/file1.txt M b:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test K 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U b:/wc1 U b:/wc1/test U b:/wc1/test/file1.txt U b:/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 4 4 barry b:\wc1\test 4 4 barry b:\wc1\test\file1.txt 4 4 barry b:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: e3fc991c-be68-a646-aad7-03fed51bb128 Last changed author: barry Last Changed Date: 28-Feb-2012 12:55:42 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.11.log000644 000765 000024 00000174242 13404261102 023215 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 1 2| r6 | barry | 2018-04-01T11:10:54.145616Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 6 2| r4 | barry | 2018-04-01T11:10:51.150123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 12:10:58 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Text Last Updated: 01-Apr-2018 12:10:55 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 12:10:59 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 12:10:54 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 12:10:52 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 12:10:51 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 12:10:50 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 12:10:54 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 12:10:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T11:11:09.147406Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 12:10:58 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py2-svn1.11.log000644 000765 000024 00000003526 13404261102 023171 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.6.log000644 000765 000024 00000152340 12070137651 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 30-Dec-2012 22:24:12 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 30-Dec-2012 22:24:12 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2012-12-30T22:24:13.512171Z | test add file 1 1| r6 | barry | 2012-12-30T22:24:17.081941Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2012-12-30T22:24:13.512171Z | test add file 6 1| r4 | barry | 2012-12-30T22:24:14.082196Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 30-Dec-2012 22:24:19 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - import Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Dec-2012 22:24:17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Dec-2012 22:24:17 Text Last Updated: 30-Dec-2012 22:24:18 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 30-Dec-2012 22:24:20 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 30-Dec-2012 22:24:17 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 30-Dec-2012 22:24:15 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 30-Dec-2012 22:24:14 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 30-Dec-2012 22:24:13 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 30-Dec-2012 22:24:12 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 30-Dec-2012 22:24:12 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 30-Dec-2012 22:24:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 30-Dec-2012 22:24:20 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 30-Dec-2012 22:24:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 30-Dec-2012 22:24:17 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 30-Dec-2012 22:24:20 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 30-Dec-2012 22:24:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/text-base/file4.txt.svn-base is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/file4.txt.tmp mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/svn-2Anz5J node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/text-base/file4.txt.svn-base A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2012-12-30T22:24:27.180956Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Dec-2012 22:24:12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Dec-2012 22:24:12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Dec-2012 22:24:17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Dec-2012 22:24:17 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Dec-2012 22:24:17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: d64e48db-ce8a-466d-b5fd-aca4ae73dfd5 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 30-Dec-2012 22:24:19 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.8.log000644 000765 000024 00000002602 12164247515 023131 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.11.log000644 000765 000024 00000004720 13404261102 023172 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.7.log000644 000765 000024 00000007225 12273461722 023141 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >endlocal C:\wc\svn\pysvn\Extension\Tests >echo. C:\wc\svn\pysvn\Extension\Tests >echo Info: CMD Info: CMD C:\wc\svn\pysvn\Extension\Tests >goto :eof pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.9.log000644 000765 000024 00000033642 12710213263 023130 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.13.log000644 000765 000024 00000015721 13566476551 023254 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T11:40:39.286366Z | test add file 1 2| r3 | barry | 2018-04-01T11:40:40.138169Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.9.log000644 000765 000024 00000011325 12705456075 023164 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.12.log000644 000765 000024 00000002602 13461042336 023177 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.7.log000644 000765 000024 00000013361 11664431657 023166 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-03.sh000755 000765 000024 00000000576 12703714102 016113 0ustar00barrystaff000000 000000 #!/bin/bash # # test-03.sh # test callbacks # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} mkdir -p testroot-03 rm -rf testroot-03 mkdir testroot-03 cd testroot-03 mkdir configdir ${PYTHON} ../test_callbacks.py pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.10.log000644 000765 000024 00000006466 14046541473 023223 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-11.unix.known_good-py3-svn1.14.log000644 000765 000024 00000006625 13660472625 023243 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.14.log000644 000765 000024 00000005342 14046474103 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.14.log000644 000765 000024 00000001411 13660472625 023230 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.11.log000644 000765 000024 00000006320 13404261102 023172 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry Info: PYSVN CMD c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.6.log000644 000765 000024 00000011565 11664446307 023167 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one file_a1.txt changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_a1.txt changelist-one file_b1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.13.log000644 000765 000024 00000002602 13566476551 023220 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.8.log000644 000765 000024 00000011231 12704212400 023134 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 4495bcd3-6fd1-4361-8208-4c791db74d87 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 15-Apr-2016 17:09:37 Text Last Updated: 15-Apr-2016 17:09:37 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 4495bcd3-6fd1-4361-8208-4c791db74d87 Last changed author: barry Last Changed Date: 15-Apr-2016 17:09:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 15-Apr-2016 17:09:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 4495bcd3-6fd1-4361-8208-4c791db74d87 Last changed author: barry Last Changed Date: 15-Apr-2016 17:09:37 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.12.log000644 000765 000024 00000015721 13461042336 023233 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T11:40:39.286366Z | test add file 1 2| r3 | barry | 2018-04-01T11:40:40.138169Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.8.log000644 000765 000024 00000032270 12164262477 023141 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T11:12:24.739260Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T11:12:24.832813Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T11:12:25.222618Z svn:log: Add two files svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T11:12:25.394132Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T11:12:25.659200Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T11:12:25.799530Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T11:12:26.049005Z svn:log: Delete one file svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T11:12:26.173742Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.10.log000644 000765 000024 00000004720 13260120165 023174 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.9.log000644 000765 000024 00000002602 12677513364 023141 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.14.log000644 000765 000024 00000174242 13660472625 023242 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 12:10:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 1 2| r6 | barry | 2018-04-01T11:10:54.145616Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T11:10:50.747418Z | test add file 6 2| r4 | barry | 2018-04-01T11:10:51.150123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 12:10:58 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Text Last Updated: 01-Apr-2018 12:10:55 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 12:10:59 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 12:10:54 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 12:10:52 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 12:10:51 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 12:10:50 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 12:10:48 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 12:10:54 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 12:10:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 12:10:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 12:10:59 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 12:10:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T11:11:09.147406Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 12:10:48 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 12:10:54 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 29716637-e768-43f2-9441-80592def7c27 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 12:10:58 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 12:11:18 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 12:11:17 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py2-svn1.14.log000644 000765 000024 00000003526 13660472625 023216 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.7.log000644 000765 000024 00000171752 12610521406 023151 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 17-Oct-2015 20:25:42 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 17-Oct-2015 20:25:42 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2015-10-17T19:25:43.562581Z | test add file 1 1| r6 | barry | 2015-10-17T19:25:47.091462Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2015-10-17T19:25:43.562581Z | test add file 6 1| r4 | barry | 2015-10-17T19:25:44.744690Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 17-Oct-2015 20:25:49 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:25:47 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:25:47 Text Last Updated: 17-Oct-2015 20:25:48 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 17-Oct-2015 20:25:50 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 17-Oct-2015 20:25:47 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 17-Oct-2015 20:25:45 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 17-Oct-2015 20:25:44 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 17-Oct-2015 20:25:43 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 17-Oct-2015 20:25:42 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 17-Oct-2015 20:25:42 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 17-Oct-2015 20:25:47 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 17-Oct-2015 20:25:50 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 17-Oct-2015 20:25:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 17-Oct-2015 20:25:47 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 17-Oct-2015 20:25:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 17-Oct-2015 20:25:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/pristine/df/df6174c0ddc76db371593ea5ac22d62b9e6276dc.svn-base is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/tmp/file4.txt.tmp mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/tmp/svn-lNRd5W node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/pristine/45/4554e019d2005c135cc0e5355b9cdb849ab46ed3.svn-base A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2015-10-17T19:25:57.196824Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 17-Oct-2015 20:25:42 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 17-Oct-2015 20:25:42 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:25:47 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:25:47 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:25:47 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: a26b545d-5c0e-4e06-88af-90ffb6601f35 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 17-Oct-2015 20:25:49 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 17-Oct-2015 20:26:06 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.5.log000644 000765 000024 00000147162 11264412526 023153 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 11-Oct-2009 18:20:37 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 11-Oct-2009 18:20:37 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/format /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/format Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt A test/file6.txt A test/folder1 A test/folder1/file7.txt A test/folder1/folder2 A test/folder1/folder2/file8.txt A test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2009-10-11T17:20:38.891999Z | test add file 1 1| r6 | barry | 2009-10-11T17:20:42.178592Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2009-10-11T17:20:38.891999Z | test add file 6 1| r4 | barry | 2009-10-11T17:20:39.209123Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 11-Oct-2009 18:20:44 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - import Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:20:42 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:20:42 Text Last Updated: 11-Oct-2009 18:20:43 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 11-Oct-2009 18:20:45 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 11-Oct-2009 18:20:42 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 11-Oct-2009 18:20:40 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 11-Oct-2009 18:20:39 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 11-Oct-2009 18:20:38 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 11-Oct-2009 18:20:37 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 11-Oct-2009 18:20:37 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 11-Oct-2009 18:20:42 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 11-Oct-2009 18:20:45 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 11-Oct-2009 18:20:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 11-Oct-2009 18:20:42 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 11-Oct-2009 18:20:45 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 11-Oct-2009 18:20:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: u'/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/text-base/file4.txt.svn-base' is_binary: False kind: merged_file: u'/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/tempfile.3.tmp' mime_type: None my_file: u'/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/tempfile.2.tmp' node_kind: path: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt' property_name: None reason: their_file: u'/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/text-base/file4.txt.svn-base' A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2009-10-11T17:20:54.318633Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 18:20:37 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 18:20:37 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:20:42 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:20:42 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:20:42 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 423b75ad-6902-4286-a87d-8ad4aa527903 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 11-Oct-2009 18:20:44 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A test/file-merge-1.txt A test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.12.log000644 000765 000024 00000004720 13461042336 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.11.log000644 000765 000024 00000002602 13404261102 023165 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.10.log000644 000765 000024 00000015721 13260152535 023231 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T11:40:39.286366Z | test add file 1 2| r3 | barry | 2018-04-01T11:40:40.138169Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.4.log000644 000765 000024 00000000000 11253135715 023133 0ustar00barrystaff000000 000000 pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.8.log000644 000765 000024 00000004621 12710210640 023121 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 1e952946-b634-4248-aaa3-62d87291ecb2 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:09:00 Text Last Updated: 27-Apr-2016 20:08:59 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 1e952946-b634-4248-aaa3-62d87291ecb2 Last changed author: barry Last Changed Date: 27-Apr-2016 20:09:00 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:08:59 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 1e952946-b634-4248-aaa3-62d87291ecb2 Last changed author: barry Last Changed Date: 27-Apr-2016 20:09:00 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.13.log000644 000765 000024 00000006320 13566476551 023225 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry Info: PYSVN CMD c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.sh000755 000765 000024 00000003647 13262407737 016137 0ustar00barrystaff000000 000000 #!/bin/bash # # test-07.sh # test copy2, move2 and changelist # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-07 cmd cd testroot-07 TESTROOT=${WORKDIR}/Tests/testroot-07 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-07 add trunk" cmd_pysvn mkdir file://${TESTROOT}/repos/trunk/test -m "test-07 add test" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1/test echo Info: Setup - add files echo test add file 1 >file_a1.txt cmd_pysvn add file_a1.txt cmd_pysvn checkin -m "commit added files" echo test add file 2 >file_a2.txt cmd_pysvn add file_a2.txt cmd_pysvn checkin -m "commit added files" echo test add file 1 >file_b1.txt cmd_pysvn add file_b1.txt cmd_pysvn checkin -m "commit added files" echo test add file 2 >file_b2.txt cmd_pysvn add file_b2.txt cmd_pysvn checkin -m "commit added files" cmd_pysvn status --verbose ${TESTROOT}/wc1 echo Info: running test_07_copy2 ${PYTHON} ${WORKDIR}/Tests/test_07_copy2.py ${TESTROOT}/configdir echo Info: running test_07_move2 ${PYTHON} ${WORKDIR}/Tests/test_07_move2.py ${TESTROOT}/configdir echo Info: running test_07_changelist ${PYTHON} ${WORKDIR}/Tests/test_07_changelist.py ${TESTROOT}/configdir true pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.9.log000644 000765 000024 00000074027 12710213263 023127 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 27-Apr-2016 20:23:51 file:///B:/repos/trunk 2 barry 0 27-Apr-2016 20:23:51 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T19:23:53.074201Z | test add file 1 2| r4 | barry | 2016-04-27T19:23:53.996156Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 27-Apr-2016 20:23:55 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:23:53 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:23:53 Text Last Updated: 27-Apr-2016 20:23:54 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 27-Apr-2016 20:23:56 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 20:23:53 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 20:23:53 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 20:23:51 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 20:23:50 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/file1.txt 7 barry 23 27-Apr-2016 20:23:56 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/file2.txt 3 barry 17 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/file3.txt 3 barry 17 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/file4.txt 3 barry 17 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 20:23:53 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 27-Apr-2016 20:23:53 B:/wc2/test/file1.txt 7 barry 23 27-Apr-2016 20:23:56 B:/wc2/test/file1b.txt 3 barry 17 27-Apr-2016 20:23:53 B:/wc2/test/file2.txt 3 barry 17 27-Apr-2016 20:23:53 B:/wc2/test/file3.txt 3 barry 17 27-Apr-2016 20:23:53 B:/wc2/test/file4.txt 3 barry 17 27-Apr-2016 20:23:53 B:/wc2/test/file5.txt 3 barry 0 27-Apr-2016 20:23:53 B:/wc2/test/folder1 3 barry 0 27-Apr-2016 20:23:53 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2016-04-27T19:24:01.215746Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:23:51 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:23:51 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:23:53 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:23:53 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:23:53 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 555eb295-9bbb-124b-a645-50df10bedd69 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 20:23:55 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 20:24:08 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 20:24:07 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 20:24:07 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 20:24:06 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 27-Apr-2016 20:24:06 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 27-Apr-2016 20:24:05 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.8.log000644 000765 000024 00000072655 12710210640 023127 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 27-Apr-2016 19:47:14 file:///B:/repos/trunk 2 barry 0 27-Apr-2016 19:47:14 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T18:47:16.392072Z | test add file 1 2| r4 | barry | 2016-04-27T18:47:17.611031Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 27-Apr-2016 19:47:18 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 19:47:17 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 19:47:17 Text Last Updated: 27-Apr-2016 19:47:17 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 27-Apr-2016 19:47:19 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 19:47:17 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 19:47:16 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 19:47:14 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 19:47:14 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 27-Apr-2016 19:47:17 file:///B:/repos/trunk/test/file1.txt 7 barry 23 27-Apr-2016 19:47:19 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/file2.txt 3 barry 17 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/file3.txt 3 barry 17 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/file4.txt 3 barry 17 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 19:47:16 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 27-Apr-2016 19:47:17 B:/wc2/test/file1.txt 7 barry 23 27-Apr-2016 19:47:19 B:/wc2/test/file1b.txt 3 barry 17 27-Apr-2016 19:47:16 B:/wc2/test/file2.txt 3 barry 17 27-Apr-2016 19:47:16 B:/wc2/test/file3.txt 3 barry 17 27-Apr-2016 19:47:16 B:/wc2/test/file4.txt 3 barry 17 27-Apr-2016 19:47:16 B:/wc2/test/file5.txt 3 barry 0 27-Apr-2016 19:47:16 B:/wc2/test/folder1 3 barry 0 27-Apr-2016 19:47:16 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2016-04-27T18:47:26.018205Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 19:47:14 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 19:47:14 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 19:47:17 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 19:47:17 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 19:47:17 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: b9204baa-5db9-3a4a-ba68-4936b34a7b08 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 19:47:18 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15 Info: CMD c:\python27.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 19:47:33 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 19:47:33 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 19:47:32 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 19:47:32 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 27-Apr-2016 19:47:31 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 27-Apr-2016 19:47:31 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.12.log000644 000765 000024 00000006320 13461042336 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry Info: PYSVN CMD c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.9.log000644 000765 000024 00000004720 12710213263 023126 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:43:05 Text Last Updated: 27-Apr-2016 20:43:05 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:43:05 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.14.log000644 000765 000024 00000042274 13660472625 023244 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.527219Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:15.779752Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos/trunk/test /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir add /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Add two files /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.082311Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.334845Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir propset svn:eol-style native /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt property_added /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt M /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.595298Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:16.839549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir rm /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Delete one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc D /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.075473Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.344591Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir cp /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/configdir checkin -m Copy one file /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc commit_copied /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.629948Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-redhat-linux-gnu) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Tests/test_04_commit_hook_test_1.py post-commit /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T18:50:17.882724Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.5.log000644 000765 000024 00000011250 11253135715 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/bin/python2.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.3 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt changelist-one file_a1.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_b1.txt changelist-one file_a1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.11.log000644 000765 000024 00000015721 13404261102 023221 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T11:40:39.286366Z | test add file 1 2| r3 | barry | 2018-04-01T11:40:40.138169Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.10.log000644 000765 000024 00000002602 13260120165 023167 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/benchmark_diff.py000644 000765 000024 00000023134 14046474103 017652 0ustar00barrystaff000000 000000 ''' ==================================================================== Copyright (c) 2005-2011 Barry A Scott. All rights reserved. This software is licensed as described in the file LICENSE.txt, which you should have received as part of this distribution. ==================================================================== ''' import sys import os import re import pprint import difflib _debug = False class LiteralMatch: def __init__( self, start, end ): self.start_pos = start self.end_pos = end def start( self ): return self.start_pos def end( self ): return self.end_pos class LiteralSearch: def __init__( self, substring ): self.substring = substring def search( self, line ): try: start_pos = line.index( self.substring ) end_pos = start_pos + len(self.substring) return LiteralMatch( start_pos, end_pos ) except ValueError: return None class LiteralCaseBlindSearch: def __init__( self, substring ): self.substring = substring.lower() def search( self, line ): try: start_pos = line.lower().index( self.substring ) end_pos = start_pos + len(self.substring) return LiteralMatch( start_pos, end_pos ) except ValueError: return None class ReplaceDirtInString: def __init__( self, lines_list, svn_version ): self.lines_list = lines_list self.workdir = self.find( 'WorkDir' ) self.python = self.find( 'PYTHON' ) self.username = self.find( 'Username' ) self.svn_bin = self.find( 'SVN_BIN' ) self.svn_version = svn_version self.txn_client_replacement = None if self.svn_version[0] > 1 or (self.svn_version[0] == 1 and self.svn_version[1] >= 8): self.txn_client_replacement = 'svn:txn-client-compat-version: %d.%d.%d' % self.svn_version self.txn_agent_replacement = None if self.svn_version[0] > 1 or (self.svn_version[0] == 1 and self.svn_version[1] >= 9): self.txn_agent_replacement = 'svn:txn-user-agent: SVN/%d.%d.%d (arch-os-string) ra_local' % self.svn_version # ------------------------------------------------------------------------ # Version strings: # Date/Timestamps: # 2001-03-27-15-36-10 # 19-Mar-01 14:52:12 # Jan 20 14:35 # Jan 20 2004 # UUID: # 467a5469-d6df-e448-9de8-282096145563 # Directory path: # Drawn from TestRoot: xxxx # Username, Hostname: # Drawn from Username: xxx & Hostname: xxx # dateAlphaNumeric_re = re.compile(r'\d+-[JFMASOND][a-z][a-z]-\d+ [ 0-9]\d:\d\d:\d\d') dateNumeric_re = re.compile(r'\d\d\d\d-\d\d-\d\d[T ]\d\d:\d\d:\d\d(.\d+)?Z?') dateUnixLs1_re = re.compile(r'[JFMASOND][a-z][a-z] \d+ \d\d:\d\d') dateUnixLs2_re = re.compile(r'[JFMASOND][a-z][a-z] \d\d\d\d') uuid_re = re.compile(r'[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}') pristine_re = re.compile( r'pristine[/\\][0-9a-z]{2}[/\\][0-9a-z]{40}' ) checksum_sha1_re = re.compile(r'[0-9a-z]{40}') checksum_md5_re = re.compile(r'[0-9a-z]{32}') tmpSvnFile_re = re.compile(r'[/\\].svn[/\\]tmp[/\\]tempfile.\d+.tmp|[/\\].svn[/\\]tmp[/\\]svn-[a-zA-Z0-9]+') self.replacement_list = [ (pristine_re, 'pristine/'), (dateAlphaNumeric_re, ''), (dateNumeric_re, ''), (uuid_re, ''), (checksum_sha1_re, ''), (checksum_md5_re, ''), (dateUnixLs1_re, ''), (dateUnixLs2_re, ''), (tmpSvnFile_re, '/.svn/tmp/'), ] if self.workdir: workdir_re1 = LiteralCaseBlindSearch( self.workdir ) workdir_re2 = LiteralCaseBlindSearch( os.path.realpath( self.workdir ) ) self.replacement_list.append( (workdir_re1, '') ) self.replacement_list.append( (workdir_re2, '') ) if self.python: python_re = LiteralCaseBlindSearch( self.python ) self.replacement_list.append( (python_re, '') ) if self.svn_bin: svn_bin_re = LiteralCaseBlindSearch( self.svn_bin ) self.replacement_list.append( (svn_bin_re, '') ) if True: # must replace username after workdir username_spaces_re = re.compile( r'\b'+self.username+' * ' ) self.replacement_list.append( (username_spaces_re, ' ') ) username_re = re.compile( r': %s\b' % self.username ) self.replacement_list.append( (username_re, ': ') ) username_re = LiteralSearch( '| %s |' % self.username ) self.replacement_list.append( (username_re, '| |') ) def find( self, keyword ): for line in self.lines_list: parts = line.split( ':' ) if parts[0] == keyword: value = (':'.join( parts[1:] ) ).strip() if _debug: print( 'Debug: find( %s ) -> %s' % (keyword, value) ) return value return '' def execute( self ): return [self.replace( line ) for line in self.lines_list] def replace( self, line ): if _debug: print( 'Debug: Processing: %r' % (line,) ) for re_expr, replacement_text in self.replacement_list: while 1: if _debug: print( 'Debug: ...trying: %r' % (replacement_text,) ) match = re_expr.search( line ) if match == None: break line = line[0:match.start()] + replacement_text + line[match.end():] if _debug: print( 'Debug: ...update line: %r' % (line,) ) if( self.txn_client_replacement is not None and line.startswith( 'svn:txn-client-compat-version: ' ) ): line = self.txn_client_replacement if _debug: print( 'Debug: ...update line: %r' % (line,) ) if( self.txn_agent_replacement is not None and line.startswith( 'svn:txn-user-agent: ' ) ): line = self.txn_agent_replacement if _debug: print( 'Debug: ...update line: %r' % (line,) ) return line def stripDirty( filename, svn_version ): f = open(filename, 'r') contents = f.read() f.close() if _debug: print( 'Debug: Debug: stripDirty( %r, %r )' % (filename, svn_version) ) lines = contents.replace( '\r\n', '\n' ).replace( '\r', '\n' ).split( '\n' ) replace = ReplaceDirtInString( lines, svn_version ) stripped_lines = replace.execute() if _debug: print( 'Debug: Debug: stripDirty Done.' ) return stripped_lines # ------------------------------------------------------------------------ # main def main( argv ): try: svn_version = tuple( [int(x) for x in argv[1].split('.')] ) benchmark_file = argv[2] results_file = argv[3] print( 'Info: SVN Version %d.%d.%d' % svn_version ) print( 'Info: Comparing %s' % benchmark_file ) benchmark = stripDirty( benchmark_file, svn_version ) if _debug: print( 'Debug: benchmark after we called stripDirty' ) pprint.pprint( benchmark ) print( 'Info: Against %s' % results_file ) results = stripDirty( results_file, svn_version ) if _debug: print( 'Debug: results after we called stripDirty' ) pprint.pprint( results ) f = open( results_file + '.clean', 'w' ) for line in results: f.write( line + '\n' ) f.close() f = open( benchmark_file + '.clean', 'w' ) for line in benchmark: f.write( line + '\n' ) f.close() if results != benchmark: print( 'Error: Test failed - %s' % results_file ) sm = difflib.SequenceMatcher() sm.set_seq1( benchmark ) sm.set_seq2( results ) opcodes = sm.get_opcodes() for tag, i1, i2, j1, j2 in opcodes: if tag in ['delete','insert','replace']: print( 'Error: --------------------------------------------------------------------------------' ) if tag in ['delete','replace']: for line_index in range(i1,i2): prefix = 'Benchmark(%d) %7s' % (line_index+1, tag) print( 'Error: %26s %s' % (prefix, benchmark[line_index]) ) if tag in ['insert','replace']: for line_index in range(j1,j2): prefix = 'Result(%d) %7s' % (line_index+1, tag) print( 'Error: %26s %s' % (prefix, results[line_index]) ) print( 'Error: --------------------------------------------------------------------------------' ) return 1 else: print( 'Info: Test succeeded' ) return 0 except IOError as e: print( 'Error: %s' % e ) return 2 # ------------------------------------------------------------------------ if __name__ == "__main__": sys.exit( main( sys.argv ) ) pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.14.log000644 000765 000024 00000011325 13660472625 023240 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 16:18:20 Text Last Updated: 19-Apr-2016 16:18:19 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 16:18:19 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-06/repos Repository UUID: 0c0404ce-2d17-4f0f-b288-a4d12de11694 Last changed author: barry Last Changed Date: 19-Apr-2016 16:18:20 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.13.log000644 000765 000024 00000004720 13566476551 023225 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.4.log000644 000765 000024 00000123325 11253135715 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Users/barry/bin/python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Users/barry/bin/python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 23-Sep-2006 19:01:20 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 23-Sep-2006 19:01:20 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/format /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/format Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt A test/file6.txt Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2006-09-23T18:01:25.696316Z | test add file 1 1| r6 | barry | 2006-09-23T18:01:30.749997Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2006-09-23T18:01:25.696316Z | test add file 6 1| r4 | barry | 2006-09-23T18:01:26.621185Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 23-Sep-2006 19:01:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt Info: Testing - import Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 19:01:30 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 19:01:30 Text Last Updated: 23-Sep-2006 19:01:31 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 23-Sep-2006 19:01:38 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 23-Sep-2006 19:01:30 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 23-Sep-2006 19:01:28 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 23-Sep-2006 19:01:26 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 23-Sep-2006 19:01:25 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 23-Sep-2006 19:01:20 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 23-Sep-2006 19:01:19 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 23-Sep-2006 19:01:30 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 23-Sep-2006 19:01:38 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 23-Sep-2006 19:01:25 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 23-Sep-2006 19:01:25 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 23-Sep-2006 19:01:25 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 23-Sep-2006 19:01:25 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 23-Sep-2006 19:01:30 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 23-Sep-2006 19:01:38 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 23-Sep-2006 19:01:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 23-Sep-2006 19:01:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 23-Sep-2006 19:01:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 23-Sep-2006 19:01:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2006-09-23T18:02:03.809429Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 23-Sep-2006 19:01:20 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 23-Sep-2006 19:01:20 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 19:01:30 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 19:01:30 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 19:01:30 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 1d0e2188-69a2-45af-83c4-dd8be320755e Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 23-Sep-2006 19:01:35 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A test/file-merge-1.txt A test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt skip /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Users/barry/bin/python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.9.log000644 000765 000024 00000006320 12701523701 023125 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.13.log000644 000765 000024 00000013570 13566476551 023254 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.14.log000644 000765 000024 00000011002 13660472625 023222 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.5.log000644 000765 000024 00000027610 11255417030 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31 PYTHON: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir mkdir file:///Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir mkdir file:///Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir mkdir file:///Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/test_04_pre_commit_test_1.py /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos 2-2 Info: pre commit test 1 Info: Transaction( /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2009-09-20T12:11:45.157837Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir checkout file:///Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos/trunk/test /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc A /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a U /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir add /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/file1.txt A /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir add /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a/file1.txt A /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc A wc/a/file1.txt A wc/file1.txt Revision 4 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/test_04_pre_commit_test_1.py /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos 3-3 Info: pre commit test 1 Info: Transaction( /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2009-09-20T12:11:46.417625Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: test_1.output end ------------------------------------------ Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc M wc/a/file1.txt M wc/file1.txt Revision 5 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/test_04_pre_commit_test_1.py /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos 4-4 Info: pre commit test 1 Info: Transaction( /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2009-09-20T12:11:47.298856Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir rm /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a/file1.txt D /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc D wc/a/file1.txt Revision 6 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/test_04_pre_commit_test_1.py /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos 5-5 Info: pre commit test 1 Info: Transaction( /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2009-09-20T12:11:48.318341Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir cp /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/file1.txt /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/file1copy.txt A /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/wc A wc/file1copy.txt Revision 7 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/test_04_pre_commit_test_1.py /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos 6-6 Info: pre commit test 1 Info: Transaction( /Users/barry/BuildTemp/Darwin_body/svn-1.5.6/pysvn/py31/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:log: Copy one file svn:check-locks: true svn:author: barry svn:date: 2009-09-20T12:11:50.208276Z Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.10.log000644 000765 000024 00000034126 14046541473 023212 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin C:\Users\barry\Projects\pysvn\Extension\Tests > setlocal C:\Users\barry\Projects\pysvn\Extension\Tests > set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client C:\Users\barry\Projects\pysvn\Extension\Tests > set PYSVN=c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\Projects\pysvn\Extension\Tests > mkdir testroot-04 C:\Users\barry\Projects\pysvn\Extension\Tests > subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-04 C:\Users\barry\Projects\pysvn\Extension\Tests > cd /d B:\ B:\ > C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:00.620812Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.10.7 svn:txn-user-agent: SVN/1.10.7 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:01.052156Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:02.108058Z svn:log: Add two files svn:txn-client-compat-version: 1.10.7 svn:txn-user-agent: SVN/1.10.7 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:02.700810Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:03.424061Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.10.7 svn:txn-user-agent: SVN/1.10.7 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:04.004269Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:04.649067Z svn:log: Delete one file svn:txn-client-compat-version: 1.10.7 svn:txn-user-agent: SVN/1.10.7 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2021-05-11T16:36:05.132075Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.8.log000644 000765 000024 00000015505 13070507472 023163 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2017-04-03T18:03:53.234285Z | test add file 1 2| r3 | barry | 2017-04-03T18:03:54.106770Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.11.log000644 000765 000024 00000023733 13404261102 023176 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:22 Lock Token: opaquelocktoken:0c72c478-7cfc-354c-be2e-5e5d827f56fc Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:23 Lock Token: opaquelocktoken:96ae1179-7853-d04c-ba9e-1ca097d043e5 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 19:35:21 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:24 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.13.log000644 000765 000024 00000074027 13566476551 023227 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T18:34:12.561156Z | test add file 1 2| r4 | barry | 2018-04-02T18:34:13.275019Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 19:34:14 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Text Last Updated: 02-Apr-2018 19:34:13 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 19:34:15 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 19:34:13 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 19:34:12 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 19:34:10 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 19:34:09 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 19:34:13 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 19:34:13 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder1 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T18:34:21.697985Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 19:34:14 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win32\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test_04_commit_hook_test_1.py000644 000765 000024 00000005102 12164244243 022053 0ustar00barrystaff000000 000000 import sys import pysvn cmd = sys.argv[1] print( 'Info: %s test 1' % (cmd,) ) if len(sys.argv) == 6 and sys.argv[5] == 'is_revision': # starting with svn 1.8 the transaction is in argv[4] but does not seem usable # continue to use the revision print( 'Info: Transaction( %s, %s, is_revision=True) ...' % (sys.argv[2], sys.argv[3]) ) t = pysvn.Transaction( sys.argv[2], sys.argv[3], is_revision=True ) elif len(sys.argv) == 5 and sys.argv[4] == 'is_revision': # pre svn 1.8 interface print( 'Info: Transaction( %s, %s, is_revision=True) ...' % (sys.argv[2], sys.argv[3]) ) t = pysvn.Transaction( sys.argv[2], sys.argv[3], is_revision=True ) else: print( 'Info: Transaction( %s, %s) ...' % (sys.argv[2], sys.argv[3]) ) t = pysvn.Transaction( sys.argv[2], sys.argv[3] ) print( 'Info: revproplist() ...' ) all_props = t.revproplist() for name, value in sorted( list( all_props.items() ) ): print( '%s: %s' % (name, value) ) print( 'Info: changed() ...' ) changes = t.changed() change_list = list( changes.items() ) change_list.sort() for name, (action, kind, text_mod, prop_mod) in change_list: print( '%s: action=%r, kind=%r, text_mod=%r, prop_mod=%r' % (name, action, kind, text_mod, prop_mod) ) if action != 'D': all_props = t.proplist( name ) for prop_name, prop_value in sorted( list( all_props.items() ) ): print( ' %s: %s' % (prop_name, prop_value) ) if kind == pysvn.node_kind.file: print( ' contents: %r' % t.cat( name ) ) print( 'Info: changed( copy_info=True ) ...' ) changes = t.changed( copy_info=True ) change_list = list( changes.items() ) change_list.sort() for name, (action, kind, text_mod, prop_mod, copyfrom_rev, copyfrom_path) in change_list: print( '%s: action=%r, kind=%r, text_mod=%r, prop_mod=%r copyfrom_rev=%r copyfrom_path=%r' % (name, action, kind, text_mod, prop_mod, copyfrom_rev, copyfrom_path) ) if action != 'D': all_props = t.proplist( name ) for prop_name, prop_value in sorted( list( all_props.items() ) ): print( ' %s: %s' % (prop_name, prop_value) ) if kind == pysvn.node_kind.file: print( ' contents: %r' % t.cat( name ) ) print( 'Info: list() ...' ) def recursive_list( path ): entries = t.list( path ) entry_list = list( entries.items() ) entry_list.sort() for name, kind in entry_list: full = '%s/%s' % (path, name) print( '%s: kind=%r' % (full, kind) ) if kind == pysvn.node_kind.dir: recursive_list( full ) recursive_list( '' ) sys.exit( 0 ) pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.12.log000644 000765 000024 00000074027 13461042336 023206 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T18:34:12.561156Z | test add file 1 2| r4 | barry | 2018-04-02T18:34:13.275019Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 19:34:14 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Text Last Updated: 02-Apr-2018 19:34:13 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 19:34:15 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 19:34:13 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 19:34:12 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 19:34:10 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 19:34:09 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 19:34:13 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 19:34:13 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder1 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T18:34:21.697985Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 19:34:14 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win32\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.7.log000644 000765 000024 00000013062 12273472574 023166 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.3 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.10.log000644 000765 000024 00000023733 13260476526 023217 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:22 Lock Token: opaquelocktoken:0c72c478-7cfc-354c-be2e-5e5d827f56fc Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:23 Lock Token: opaquelocktoken:96ae1179-7853-d04c-ba9e-1ca097d043e5 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 19:35:21 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:24 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-09.unix.known_good-py2-svn1.9.log000644 000765 000024 00000016105 13437262554 023167 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/Projects/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/Projects/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2019-03-04T17:48:06.335056Z | test add file 1 2| r3 | barry | 2019-03-04T17:48:07.176790Z | test add line 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.11.log000644 000765 000024 00000033642 13404261102 023176 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.305330Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.680347Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.133575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.508576Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.883708Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.289937Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.664960Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:24.071188Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.12.log000644 000765 000024 00000013570 13461042336 023233 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.8.log000644 000765 000024 00000006122 12573333550 023134 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-08.sh000755 000765 000024 00000003621 13262407737 016130 0ustar00barrystaff000000 000000 #!/bin/bash # # test-08.sh # test patch # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-08 cmd cd testroot-08 TESTROOT=${WORKDIR}/Tests/testroot-08 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-08 add trunk" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1 echo Info: Setup - add files and folders cmd_pysvn mkdir folder1 cmd_pysvn mkdir folder2 cmd_pysvn mkdir folder2/sub2 echo test add file 1 >folder1/file-a.txt cmd_pysvn add folder1/file-a.txt echo test add file 2 >folder2/file-b.txt cmd_pysvn add folder2/file-b.txt echo test add file 2 >folder2/sub2/file-b.txt cmd_pysvn add folder2/sub2/file-b.txt cmd_pysvn checkin -m "commit added files" echo test add line 2 >>folder1/file-a.txt cmd_pysvn diff folder1/file-a.txt >${TESTROOT}/diff-1.patch cmd cat ${TESTROOT}/diff-1.patch cmd cat folder1/file-a.txt cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc2 cmd cd ${TESTROOT}/wc2 cmd cat folder1/file-a.txt cmd_pysvn patch ${TESTROOT}/diff-1.patch ${TESTROOT}/wc2 --no-remove-tempfiles cmd cat folder1/file-a.txt cmd diff -u ${TESTROOT}/wc1/folder1/file-a.txt ${TESTROOT}/wc2/folder1/file-a.txt true pysvn-1.9.22/Tests/win32.mak000644 000765 000024 00000010654 11255444226 016017 0ustar00barrystaff000000 000000 # # PySVN win32 tests - win32.mak # all: test-01.win32.new.log test-03.win32.new.log test-04.win32.new.log test-05.win32.new.log test-06.win32.new.log test-07.win32.new.log clean: clean-01 clean-03 clean-04 clean-05 clean-06 clean-07 # # Helpers while developing and verifying tests # WB_DIFF=wb-diff.cmd test-01.win32.new.log: test-01.cmd test-01.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-01 rmdir /s /q testroot-01 test-01.cmd >test-01.win32.new.log 2>&1 python benchmark_diff.py test-01.win32.known_good-$(KNOWN_GOOD_VERSION).log test-01.win32.new.log clean-01: -subst b: /d >nul 2>&1 if exist test-01.win32.new.log del test-01.win32.new.log if exist testroot-01 rmdir /s /q testroot-01 diff-01: test-01.win32.new.log $(WB_DIFF) test-01.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-01.win32.new.log.clean new-01: test-01.win32.new.log copy test-01.win32.new.log test-01.win32.known_good-$(KNOWN_GOOD_VERSION).log test-03.win32.new.log: test-03.cmd test-03.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-03 rmdir /s /q testroot-03 if "%USERNAME%" == "barry" test-03.cmd >test-03.win32.new.log 2>&1 if "%USERNAME%" == "barry" python benchmark_diff.py test-03.win32.known_good-$(KNOWN_GOOD_VERSION).log test-03.win32.new.log clean-03: -subst b: /d >nul 2>&1 if exist test-03.win32.new.log del test-03.win32.new.log if exist testroot-03 rmdir /s /q testroot-03 diff-03: test-03.win32.new.log $(WB_DIFF) test-03.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-03.win32.new.log.clean new-03: test-03.win32.new.log copy test-03.win32.new.log test-03.win32.known_good-$(KNOWN_GOOD_VERSION).log test-04.win32.new.log: test-04.cmd test-04.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-04 rmdir /s /q testroot-04 test-04.cmd >test-04.win32.new.log 2>&1 python benchmark_diff.py test-04.win32.known_good-$(KNOWN_GOOD_VERSION).log test-04.win32.new.log clean-04: -subst b: /d >nul 2>&1 if exist test-04.win32.new.log del test-04.win32.new.log if exist testroot-04 rmdir /s /q testroot-04 diff-04: test-04.win32.new.log $(WB_DIFF) test-04.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-04.win32.new.log.clean new-04: test-04.win32.new.log copy test-04.win32.new.log test-04.win32.known_good-$(KNOWN_GOOD_VERSION).log test-05.win32.new.log: test-05.cmd test-05.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-05 rmdir /s /q testroot-05 test-05.cmd >test-05.win32.new.log 2>&1 python benchmark_diff.py test-05.win32.known_good-$(KNOWN_GOOD_VERSION).log test-05.win32.new.log clean-05: -subst b: /d >nul 2>&1 if exist test-05.win32.new.log del test-05.win32.new.log if exist testroot-05 rmdir /s /q testroot-05 diff-05: test-05.win32.new.log $(WB_DIFF) test-05.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-05.win32.new.log.clean new-05: test-05.win32.new.log copy test-05.win32.new.log test-05.win32.known_good-$(KNOWN_GOOD_VERSION).log test-06.win32.new.log: test-06.cmd test-06.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-06 rmdir /s /q testroot-06 test-06.cmd >test-06.win32.new.log 2>&1 python benchmark_diff.py test-06.win32.known_good-$(KNOWN_GOOD_VERSION).log test-06.win32.new.log clean-06: -subst b: /d >nul 2>&1 if exist test-06.win32.new.log del test-06.win32.new.log if exist testroot-06 rmdir /s /q testroot-06 diff-06: test-06.win32.new.log $(WB_DIFF) test-06.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-06.win32.new.log.clean new-06: test-06.win32.new.log copy test-06.win32.new.log test-06.win32.known_good-$(KNOWN_GOOD_VERSION).log test-07.win32.new.log: test-07.cmd test-07.win32.known_good-$(KNOWN_GOOD_VERSION).log -subst b: /d >nul 2>&1 if exist testroot-07 rmdir /s /q testroot-07 test-07.cmd >test-07.win32.new.log 2>&1 python benchmark_diff.py test-07.win32.known_good-$(KNOWN_GOOD_VERSION).log test-07.win32.new.log clean-07: -subst b: /d >nul 2>&1 if exist test-07.win32.new.log del test-07.win32.new.log if exist testroot-07 rmdir /s /q testroot-07 diff-07: test-07.win32.new.log $(WB_DIFF) test-07.win32.known_good-$(KNOWN_GOOD_VERSION).log.clean test-07.win32.new.log.clean new-07: test-07.win32.new.log copy test-07.win32.new.log test-07.win32.known_good-$(KNOWN_GOOD_VERSION).log pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.10.log000644 000765 000024 00000013570 13260120165 023223 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.6.log000644 000765 000024 00000043373 11507354105 023155 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 2-2 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2010-12-31T13:14:15.110936Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3 is_revision Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:author: barry svn:date: 2010-12-31T13:14:15.226667Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3-3 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2010-12-31T13:14:16.246329Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4 is_revision Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:log: Add two files svn:author: barry svn:date: 2010-12-31T13:14:16.482983Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4-4 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2010-12-31T13:14:17.199908Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5 is_revision Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:author: barry svn:date: 2010-12-31T13:14:17.321251Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5-5 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2010-12-31T13:14:18.193010Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6 is_revision Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:log: Delete one file svn:author: barry svn:date: 2010-12-31T13:14:18.330038Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6-6 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:log: Copy one file svn:check-locks: true svn:author: barry svn:date: 2010-12-31T13:14:20.182595Z Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 7 is_revision Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:log: Copy one file svn:author: barry svn:date: 2010-12-31T13:14:20.722154Z Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.14.log000644 000765 000024 00000007721 13660472625 023226 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T18:36:24.970171Z | test add file 1 2| r3 | barry | 2018-04-02T18:36:25.586206Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.8.log000644 000765 000024 00000043077 13260165767 023174 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 145abc49-aa65-4e58-b0bd-1848fd75c120 Last changed author: barry Last Changed Date: 01-Apr-2018 15:18:41 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 15:18:41 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 145abc49-aa65-4e58-b0bd-1848fd75c120 Last changed author: barry Last Changed Date: 01-Apr-2018 15:18:41 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 15:18:43 Lock Token: opaquelocktoken:9f203876-ad2e-4057-879e-79df97a23143 Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 15:18:41 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 15:18:43 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 15:18:43 3 barry 16 01-Apr-2018 15:18:41 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 145abc49-aa65-4e58-b0bd-1848fd75c120 Last changed author: barry Last Changed Date: 01-Apr-2018 15:18:41 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 15:18:44 Lock Token: opaquelocktoken:41b814d5-a65b-4854-a165-37db877888cf Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 15:18:42 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 15:18:44 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 145abc49-aa65-4e58-b0bd-1848fd75c120 Last changed author: barry Last Changed Date: 01-Apr-2018 15:18:44 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 15:18:44 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.13.log000644 000765 000024 00000033642 13566476551 023231 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.305330Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.680347Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.133575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.508576Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.883708Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.289937Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.664960Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:24.071188Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.12.log000644 000765 000024 00000023733 13461042336 023210 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:22 Lock Token: opaquelocktoken:0c72c478-7cfc-354c-be2e-5e5d827f56fc Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:23 Lock Token: opaquelocktoken:96ae1179-7853-d04c-ba9e-1ca097d043e5 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 19:35:21 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:24 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.9.log000644 000765 000024 00000011002 12710212571 023131 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.9.log000644 000765 000024 00000001411 12564665666 023166 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.10.log000644 000765 000024 00000074027 13260476526 023215 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T18:34:12.561156Z | test add file 1 2| r4 | barry | 2018-04-02T18:34:13.275019Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 19:34:14 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Text Last Updated: 02-Apr-2018 19:34:13 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 19:34:15 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 19:34:13 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 19:34:12 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 19:34:10 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 19:34:09 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 19:34:13 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 19:34:13 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder1 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T18:34:21.697985Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 19:34:14 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win32\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.8.log000644 000765 000024 00000023356 13260740056 023140 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 00cd09c5-a905-e94d-a345-4ef3daaf3963 Last changed author: barry Last Changed Date: 03-Apr-2018 09:21:12 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 03-Apr-2018 09:21:11 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 09:21:12 B:/wc1/test 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file1.txt 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 00cd09c5-a905-e94d-a345-4ef3daaf3963 Last changed author: barry Last Changed Date: 03-Apr-2018 09:21:12 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 09:21:13 Lock Token: opaquelocktoken:ed5a608a-a9ca-c34d-810d-9b4b537e9182 Lock Comment: Schedule: normal Text Last Updated: 03-Apr-2018 09:21:11 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 09:21:13 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 09:21:12 B:/wc1/test 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 09:21:13 3 barry 17 03-Apr-2018 09:21:12 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 00cd09c5-a905-e94d-a345-4ef3daaf3963 Last changed author: barry Last Changed Date: 03-Apr-2018 09:21:12 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 09:21:14 Lock Token: opaquelocktoken:4a72c5cb-1c4b-464e-8d33-9027fe66ec33 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 03-Apr-2018 09:21:12 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 03-Apr-2018 09:21:12 B:/wc2 3 barry 0 03-Apr-2018 09:21:12 B:/wc2/test 3 barry 17 03-Apr-2018 09:21:12 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 09:21:14 3 barry 17 03-Apr-2018 09:21:12 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 09:21:15 B:/wc2 4 barry 0 03-Apr-2018 09:21:15 B:/wc2/test 4 barry 35 03-Apr-2018 09:21:15 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 09:21:14 4 barry 35 03-Apr-2018 09:21:15 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 09:21:15 B:/wc2 4 barry 0 03-Apr-2018 09:21:15 B:/wc2/test 4 barry 35 03-Apr-2018 09:21:15 B:/wc2/test/file1.txt 4 barry 35 03-Apr-2018 09:21:15 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 09:21:15 B:/wc1 4 barry 0 03-Apr-2018 09:21:15 B:/wc1/test 4 barry 35 03-Apr-2018 09:21:15 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 09:21:15 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 00cd09c5-a905-e94d-a345-4ef3daaf3963 Last changed author: barry Last Changed Date: 03-Apr-2018 09:21:15 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 09:21:15 B:/wc1 4 barry 0 03-Apr-2018 09:21:15 B:/wc1/test 4 barry 35 03-Apr-2018 09:21:15 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 09:21:15 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.14.log000644 000765 000024 00000013720 13660472625 023241 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.9.log000644 000765 000024 00000023647 13260740056 023144 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 9043b29e-186a-a54b-971a-b7de7c172d03 Last changed author: barry Last Changed Date: 03-Apr-2018 18:49:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 03-Apr-2018 18:49:52 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 18:49:54 B:/wc1/test 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file1.txt 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 9043b29e-186a-a54b-971a-b7de7c172d03 Last changed author: barry Last Changed Date: 03-Apr-2018 18:49:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 18:49:54 Lock Token: opaquelocktoken:e37d2696-96ab-d143-82fe-6a5470bcf131 Lock Comment: Schedule: normal Text Last Updated: 03-Apr-2018 18:49:52 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 18:49:54 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 18:49:54 B:/wc1/test 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 18:49:54 3 barry 17 03-Apr-2018 18:49:54 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 9043b29e-186a-a54b-971a-b7de7c172d03 Last changed author: barry Last Changed Date: 03-Apr-2018 18:49:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 18:49:56 Lock Token: opaquelocktoken:5d8d3164-0a24-674e-ae9d-095de9581a74 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 03-Apr-2018 18:49:54 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 03-Apr-2018 18:49:54 B:/wc2 3 barry 0 03-Apr-2018 18:49:54 B:/wc2/test 3 barry 17 03-Apr-2018 18:49:54 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 18:49:56 3 barry 17 03-Apr-2018 18:49:54 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 18:49:57 B:/wc2 4 barry 0 03-Apr-2018 18:49:57 B:/wc2/test 4 barry 35 03-Apr-2018 18:49:57 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 18:49:56 4 barry 35 03-Apr-2018 18:49:57 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 18:49:57 B:/wc2 4 barry 0 03-Apr-2018 18:49:57 B:/wc2/test 4 barry 35 03-Apr-2018 18:49:57 B:/wc2/test/file1.txt 4 barry 35 03-Apr-2018 18:49:57 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 18:49:57 B:/wc1 4 barry 0 03-Apr-2018 18:49:57 B:/wc1/test 4 barry 35 03-Apr-2018 18:49:57 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 18:49:57 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 9043b29e-186a-a54b-971a-b7de7c172d03 Last changed author: barry Last Changed Date: 03-Apr-2018 18:49:57 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 18:49:57 B:/wc1 4 barry 0 03-Apr-2018 18:49:57 B:/wc1/test 4 barry 35 03-Apr-2018 18:49:57 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 18:49:57 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.8.log000644 000765 000024 00000001411 12164247515 023146 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.11.log000644 000765 000024 00000074027 13404261102 023174 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T18:34:12.561156Z | test add file 1 2| r4 | barry | 2018-04-02T18:34:13.275019Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 19:34:14 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Text Last Updated: 02-Apr-2018 19:34:13 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 19:34:15 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 19:34:13 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 19:34:12 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 19:34:10 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 19:34:09 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 19:34:13 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 19:34:13 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder1 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T18:34:21.697985Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 19:34:14 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win32\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.9.log000644 000765 000024 00000005174 12710214626 023130 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.14.log000644 000765 000024 00000007275 14046474103 023222 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.13.log000644 000765 000024 00000023733 13566476551 023231 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:22 Lock Token: opaquelocktoken:0c72c478-7cfc-354c-be2e-5e5d827f56fc Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:23 Lock Token: opaquelocktoken:96ae1179-7853-d04c-ba9e-1ca097d043e5 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 19:35:21 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:24 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.12.log000644 000765 000024 00000033642 13461042336 023210 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.305330Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.680347Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.133575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.508576Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.883708Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.289937Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.664960Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:24.071188Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.9.log000644 000765 000024 00000043530 13260200645 023150 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 039e5bab-4a45-4747-a521-6f7a69724551 Last changed author: barry Last Changed Date: 01-Apr-2018 16:36:31 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 16:36:31 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 039e5bab-4a45-4747-a521-6f7a69724551 Last changed author: barry Last Changed Date: 01-Apr-2018 16:36:31 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 16:36:33 Lock Token: opaquelocktoken:cb250c8a-15be-4c8c-bfca-eb6064b428a2 Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 16:36:31 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 16:36:33 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 16:36:33 3 barry 16 01-Apr-2018 16:36:31 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 039e5bab-4a45-4747-a521-6f7a69724551 Last changed author: barry Last Changed Date: 01-Apr-2018 16:36:31 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 16:36:34 Lock Token: opaquelocktoken:e7b21ffd-6b37-4fb6-8ec6-73929848eea0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 16:36:32 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 16:36:34 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 039e5bab-4a45-4747-a521-6f7a69724551 Last changed author: barry Last Changed Date: 01-Apr-2018 16:36:34 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 16:36:34 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.7.log000644 000765 000024 00000043673 12204164033 023153 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-18T15:25:59.705493Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-18T15:25:59.835390Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-18T15:26:01.229368Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-18T15:26:01.308129Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-18T15:26:02.242510Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-18T15:26:02.314013Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-18T15:26:03.219870Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-18T15:26:03.283417Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-18T15:26:05.104372Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 7 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-18T15:26:05.170124Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.14.log000644 000765 000024 00000043466 13660472625 023252 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:56 Lock Token: opaquelocktoken:cb30f534-f114-42d9-8a51-d2efb0986fab Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:58 Lock Token: opaquelocktoken:8d98c1c7-fb2c-4377-ab0d-00ac67996da0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:50:55 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:50:58 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:58 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.11.log000644 000765 000024 00000013570 13404261102 023221 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.6.log000644 000765 000024 00000010513 11331322163 023136 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 01-Mar-2009 14:58:54 Text Last Updated: 01-Mar-2009 14:58:54 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 01-Mar-2009 14:58:54 Text Last Updated: 01-Mar-2009 14:58:54 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:54 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.8.log000644 000765 000024 00000013361 12164247515 023162 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-09.sh000755 000765 000024 00000004621 13262407737 016132 0ustar00barrystaff000000 000000 #!/bin/bash # # test-09.sh # test annotate, annotate2 and status2 # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-09 cmd cd testroot-09 TESTROOT=${WORKDIR}/Tests/testroot-09 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-09 add trunk" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1 echo Info: Setup - add files and folders cmd_pysvn mkdir folder1 echo test add file 1 >folder1/file-a.txt cmd_pysvn add folder1/file-a.txt cmd_pysvn checkin -m "commit added files" echo test add line 2 >>folder1/file-a.txt cmd_pysvn checkin -m "add line 2" cmd_pysvn diff folder1/file-a.txt >${TESTROOT}/diff-1.patch cmd_pysvn annotate folder1/file-a.txt cmd_pysvn annotate2 folder1/file-a.txt echo Info: propset_local cmd_pysvn propset_local svn:eol native folder1/file-a.txt cmd_pysvn proplist --verbose folder1/file-a.txt cmd_pysvn checkin -m "eol is native" cmd_pysvn propdel_local svn:eol folder1/file-a.txt cmd_pysvn proplist --verbose folder1/file-a.txt cmd_pysvn checkin -m "remove eol" cmd_pysvn propset_remote test-case 09 file://${TESTROOT}/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" cmd_pysvn proplist --verbose file://${TESTROOT}/repos/trunk/folder1/file-a.txt cmd_pysvn propdel_remote test-case file://${TESTROOT}/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" cmd_pysvn proplist --verbose file://${TESTROOT}/repos/trunk/folder1/file-a.txt cmd_pysvn update cmd cd folder1 cmd touch unversioned.txt cmd_pysvn status2 cmd_pysvn status2 --verbose cmd_pysvn status2 --verbose --quiet cmd_pysvn lock file-a.txt cmd_pysvn status2 cmd_pysvn status2 --verbose cmd_pysvn status2 --verbose --quiet true pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.4.log000644 000765 000024 00000004631 11331322163 023117 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 30-Dec-2005 20:31:09 Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info of URL Info: PYSVN CMD info --revision HEAD file:///b:/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.10.log000644 000765 000024 00000043466 13260153231 023227 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:56 Lock Token: opaquelocktoken:cb30f534-f114-42d9-8a51-d2efb0986fab Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:58 Lock Token: opaquelocktoken:8d98c1c7-fb2c-4377-ab0d-00ac67996da0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:50:55 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:50:58 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:58 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.11.log000644 000765 000024 00000007721 13404261102 023201 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T18:36:24.970171Z | test add file 1 2| r3 | barry | 2018-04-02T18:36:25.586206Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.12.log000644 000765 000024 00000011002 13461042336 023207 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.5.log000644 000765 000024 00000064564 11264420550 023133 0ustar00barrystaff000000 000000 WorkDir: C:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python31\python.exe Username: barry Info: PYSVN CMD c:\python31\python.exe C:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 11-Oct-2009 19:16:22 file:///b:/repos/trunk 2 barry 0 11-Oct-2009 19:16:22 file:///b:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\prop-base b:\wc1\.svn\props b:\wc1\.svn\text-base b:\wc1\.svn\tmp b:\wc1\.svn\tmp\prop-base b:\wc1\.svn\tmp\props b:\wc1\.svn\tmp\text-base b:\wc1\test\.svn\entries b:\wc1\test\.svn\format b:\wc1\test\.svn\prop-base b:\wc1\test\.svn\props b:\wc1\test\.svn\text-base b:\wc1\test\.svn\tmp b:\wc1\test\.svn\tmp\prop-base b:\wc1\test\.svn\tmp\props b:\wc1\test\.svn\tmp\text-base Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD add file3.txt A file3.txt Info: PYSVN CMD add file4.txt A file4.txt Info: PYSVN CMD add --force file5.txt A file5.txt Info: PYSVN CMD add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A folder3 Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt A test/folder1 A test/folder1/file7.txt A test/folder1/folder2 A test/folder1/folder2/file8.txt A test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt A b:/wc2/test/file4.txt A b:/wc2/test/file5.txt A b:/wc2/test/folder1 A b:/wc2/test/folder1/file7.txt A b:/wc2/test/folder1/folder2 A b:/wc2/test/folder1/folder2/file8.txt A b:/wc2/test/folder3 U b:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U b:/wc2 U b:/wc2/test U b:/wc2/test/file1.txt Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2009-10-11T18:16:28.490875Z | test add file 1 1| r4 | barry | 2009-10-11T18:16:30.709625Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 11-Oct-2009 19:16:35 file:///b:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A b:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: b:/wc2/test/file1b.txt =================================================================== --- b:/wc2/test/file1b.txt (revision 7) +++ b:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - import Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///b:/repos/trunk/test Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 19:16:30 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 19:16:30 Text Last Updated: 11-Oct-2009 19:16:32 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 11-Oct-2009 19:16:38 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 11-Oct-2009 19:16:30 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 11-Oct-2009 19:16:28 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 11-Oct-2009 19:16:22 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 11-Oct-2009 19:16:21 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///b:/repos/trunk/test/file1.txt file:///b:/repos/trunk/test/file1b.txt file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file3.txt file:///b:/repos/trunk/test/file4.txt file:///b:/repos/trunk/test/file5.txt file:///b:/repos/trunk/test/folder1 file:///b:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 11-Oct-2009 19:16:30 file:///b:/repos/trunk/test/file1.txt 7 barry 23 11-Oct-2009 19:16:38 file:///b:/repos/trunk/test/file1b.txt 3 barry 17 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/file2.txt 3 barry 17 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/file3.txt 3 barry 17 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/file4.txt 3 barry 17 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/file5.txt 3 barry 0 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/folder1 3 barry 0 11-Oct-2009 19:16:28 file:///b:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test b:/wc2/test/file1.txt b:/wc2/test/file1b.txt b:/wc2/test/file2.txt b:/wc2/test/file3.txt b:/wc2/test/file4.txt b:/wc2/test/file5.txt b:/wc2/test/folder1 b:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 11-Oct-2009 19:16:30 b:/wc2/test/file1.txt 7 barry 23 11-Oct-2009 19:16:38 b:/wc2/test/file1b.txt 3 barry 17 11-Oct-2009 19:16:28 b:/wc2/test/file2.txt 3 barry 17 11-Oct-2009 19:16:28 b:/wc2/test/file3.txt 3 barry 17 11-Oct-2009 19:16:28 b:/wc2/test/file4.txt 3 barry 17 11-Oct-2009 19:16:28 b:/wc2/test/file5.txt 3 barry 0 11-Oct-2009 19:16:28 b:/wc2/test/folder1 3 barry 0 11-Oct-2009 19:16:28 b:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A b:/wc2/test/file3b.txt D b:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry b:\wc2 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt 4 3 barry b:\wc2\test\file2.txt 9 9 barry b:\wc2\test\file3b.txt 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D file5.txt Info: PYSVN CMD status M file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: 'b:\\wc2\\test\\.svn\\text-base\\file4.txt.svn-base' is_binary: False kind: merged_file: 'b:\\wc2\\test\\.svn\\tmp\\tempfile.3.tmp' mime_type: None my_file: 'b:\\wc2\\test\\.svn\\tmp\\tempfile.2.tmp' node_kind: path: 'b:/wc2/test/file4.txt' property_name: None reason: their_file: 'b:\\wc2\\test\\.svn\\tmp\\text-base\\file4.txt.svn-base' A b:/wc2/test/file2b.txt D b:/wc2/test/file2.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R b:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2009-10-11T18:17:02.803375Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/repos/trunk Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 19:16:22 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 19:16:22 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/repos/trunk Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 19:16:30 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 19:16:30 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 19:16:30 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt D b:/wc2/test/file1b.txt D b:/wc2/test/file2b.txt D b:/wc2/test/file3b.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/tags/version1 Repository UUID: 2366d249-f026-ca4d-8d96-447fa5eb453f Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:16:35 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A b:/wc3/test A b:/wc3/test/file1.txt A b:/wc3/test/file1b.txt A b:/wc3/test/file2b.txt A b:/wc3/test/file3b.txt A b:/wc3/test/file4.txt A b:/wc3/test/file5.txt A b:/wc3/test/folder1 A b:/wc3/test/folder1/file7.txt A b:/wc3/test/folder1/folder2 A b:/wc3/test/folder1/folder2/file8.txt A b:/wc3/test/folder3 U b:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A test/file-merge-1.txt A test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A b:/wc3/test-branch A b:/wc3/test-branch/file-merge-1.txt A b:/wc3/test-branch/file-merge-2.txt A b:/wc3/test-branch/file1.txt A b:/wc3/test-branch/file1b.txt A b:/wc3/test-branch/file2b.txt A b:/wc3/test-branch/file3b.txt A b:/wc3/test-branch/file4.txt A b:/wc3/test-branch/file5.txt A b:/wc3/test-branch/folder1 A b:/wc3/test-branch/folder1/file7.txt A b:/wc3/test-branch/folder1/folder2 A b:/wc3/test-branch/folder1/folder2/file8.txt A b:/wc3/test-branch/folder3 U b:/wc3 U b:/wc3/test Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt D b:/wc3/test-branch/file-merge-1.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt merge_begin b:/wc3/test-branch merge_begin b:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch U b:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M b:\wc3\test-branch D b:\wc3\test-branch\file-merge-1.txt MM b:\wc3\test-branch\file-merge-2.txt A + b:\wc3\test-branch\file-merge-3.txt M b:\wc3\test-branch\file1.txt M b:\wc3\test-branch\file1b.txt M b:\wc3\test-branch\file2b.txt M b:\wc3\test-branch\file3b.txt M b:\wc3\test-branch\file4.txt M b:\wc3\test-branch\file5.txt Info: PYSVN CMD diff b:\wc3\test-branch Property changes on: b:\wc3\test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Property changes on: b:\wc3\test-branch\file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r15 Property changes on: b:\wc3\test-branch\file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r15 Property changes on: b:\wc3\test-branch\file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r15 Property changes on: b:\wc3\test-branch\file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r15 Property changes on: b:\wc3\test-branch\file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r15 Index: b:/wc3/test-branch/file-merge-1.txt =================================================================== --- b:/wc3/test-branch/file-merge-1.txt (revision 14) +++ b:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: b:/wc3/test-branch/file-merge-2.txt =================================================================== --- b:/wc3/test-branch/file-merge-2.txt (revision 14) +++ b:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: b:\wc3\test-branch\file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Property changes on: b:\wc3\test-branch\file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Property changes on: b:\wc3\test-branch\file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r15 Info: CMD c:\python31\python.exe C:\wc\pysvn\trunk\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - end pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.9.log000644 000765 000024 00000201671 12710133341 023144 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos -v -R 2 barry 0 27-Apr-2016 13:36:16 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk 2 barry 0 27-Apr-2016 13:36:16 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/find.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T12:36:19.736390Z | test add file 1 2| r6 | barry | 2016-04-27T12:36:25.923883Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2016-04-27T12:36:19.736390Z | test add file 6 2| r4 | barry | 2016-04-27T12:36:20.887713Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags 8 barry 0 27-Apr-2016 13:36:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:36:25 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:36:25 Text Last Updated: 27-Apr-2016 13:36:27 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 27-Apr-2016 13:36:33 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 27-Apr-2016 13:36:25 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 27-Apr-2016 13:36:22 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 13:36:20 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 13:36:19 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 13:36:16 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 13:36:15 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 27-Apr-2016 13:36:25 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 27-Apr-2016 13:36:33 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 13:36:19 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 barry 23 27-Apr-2016 13:36:25 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 27-Apr-2016 13:36:33 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 27-Apr-2016 13:36:19 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2016-04-27T12:36:48.892104Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 13:36:16 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 13:36:16 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:36:25 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:36:25 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:36:25 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 196a8289-7994-4d54-9d03-a19fc32d9689 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 27-Apr-2016 13:36:31 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 27-Apr-2016 13:37:08 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 27-Apr-2016 13:37:07 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 13:37:06 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 13:37:05 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 13:37:04 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 13:37:03 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.7.log000644 000765 000024 00000002461 11653316763 023136 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.10.log000644 000765 000024 00000007275 14046541473 023223 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.8.log000644 000765 000024 00000007053 12710210640 023125 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.10.log000644 000765 000024 00000013720 13260120165 023216 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.6.log000644 000765 000024 00000031772 12273454607 023145 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T14:38:48.683810Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T14:38:48.824206Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A b:/wc/a U b:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A b:/wc/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A b:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T14:38:49.479390Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T14:38:49.666585Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added b:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T14:38:50.118973Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T14:38:50.290569Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D b:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T14:38:50.742957Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T14:38:50.883354Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.7.log000644 000765 000024 00000031546 12177165073 023144 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-03T11:29:50.106219Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-03T11:29:50.230956Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-03T11:29:50.870232Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-03T11:29:51.041745Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-03T11:29:51.400363Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-03T11:29:51.571876Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-03T11:29:51.930495Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-03T11:29:52.070824Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.11.log000644 000765 000024 00000013720 13404261102 023214 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.14.log000644 000765 000024 00000074027 13660472625 023221 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk 2 barry - 02-Apr-2018 19:34:10 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T18:34:12.561156Z | test add file 1 2| r4 | barry | 2018-04-02T18:34:13.275019Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 19:34:14 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Text Last Updated: 02-Apr-2018 19:34:13 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 19:34:15 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 19:34:13 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 19:34:12 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 19:34:10 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 19:34:09 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 19:34:13 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 19:34:12 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 19:34:13 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 19:34:15 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 19:34:12 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder1 3 barry - 02-Apr-2018 19:34:12 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T18:34:21.697985Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 19:34:10 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 19:34:13 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 383c1d92-6283-d54d-a54e-8830d52813ca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 19:34:14 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python27.Win32\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 19:34:29 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 19:34:28 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 19:34:27 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.9.log000644 000765 000024 00000007125 12710213263 023132 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.6.log000644 000765 000024 00000002461 11253135715 023125 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.11.log000644 000765 000024 00000007125 13404261102 023177 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.8.log000644 000765 000024 00000172414 12710154207 023151 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 27-Apr-2016 16:08:57 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 27-Apr-2016 16:08:57 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T15:09:00.006413Z | test add file 1 2| r6 | barry | 2016-04-27T15:09:04.112081Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2016-04-27T15:09:00.006413Z | test add file 6 2| r4 | barry | 2016-04-27T15:09:01.111257Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 27-Apr-2016 16:09:08 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:09:04 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:09:04 Text Last Updated: 27-Apr-2016 16:09:05 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 27-Apr-2016 16:09:09 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 27-Apr-2016 16:09:04 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 27-Apr-2016 16:09:02 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 16:09:01 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 16:09:00 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 16:08:57 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 16:08:57 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 27-Apr-2016 16:09:04 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 27-Apr-2016 16:09:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 16:09:00 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 27-Apr-2016 16:09:04 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 27-Apr-2016 16:09:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 27-Apr-2016 16:09:00 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2016-04-27T15:09:19.112986Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 16:08:57 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 16:08:57 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:09:04 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:09:04 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:09:04 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: a2dfadf6-b3b5-471a-b21e-5ae6cfca96c6 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 27-Apr-2016 16:09:08 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 16:09:28 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.13.log000644 000765 000024 00000011002 13566476551 023230 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.10.log000644 000765 000024 00000007721 13260476526 023222 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T18:36:24.970171Z | test add file 1 2| r3 | barry | 2018-04-02T18:36:25.586206Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.14.log000644 000765 000024 00000013570 13660472625 023246 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.11.log000644 000765 000024 00000043466 13404261102 023225 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:56 Lock Token: opaquelocktoken:cb30f534-f114-42d9-8a51-d2efb0986fab Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:58 Lock Token: opaquelocktoken:8d98c1c7-fb2c-4377-ab0d-00ac67996da0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:50:55 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:50:58 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:58 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.5.log000644 000765 000024 00000004652 11331322163 023123 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Username: barry Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 30-Dec-2005 20:31:09 Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info of URL Info: PYSVN CMD info --revision HEAD file:///b:/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.9.log000644 000765 000024 00000013722 12564665666 023203 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.7.log000644 000765 000024 00000010521 11603642311 023140 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python /home/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: e380351c-eb9c-4e30-b96e-2f18b9ec2edb Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 02-Jul-2011 16:45:43 Text Last Updated: 02-Jul-2011 16:45:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: e380351c-eb9c-4e30-b96e-2f18b9ec2edb Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 02-Jul-2011 16:45:43 Text Last Updated: 02-Jul-2011 16:45:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: e380351c-eb9c-4e30-b96e-2f18b9ec2edb Last changed author: barry Last Changed Date: 02-Jul-2011 16:45:43 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.5.log000644 000765 000024 00000010103 11331322163 023130 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.3 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Last changed author: barry Last Changed Date: 10-Jan-2006 23:41:45 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.13.log000644 000765 000024 00000043466 13566476551 023260 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:56 Lock Token: opaquelocktoken:cb30f534-f114-42d9-8a51-d2efb0986fab Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:58 Lock Token: opaquelocktoken:8d98c1c7-fb2c-4377-ab0d-00ac67996da0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:50:55 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:50:58 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:58 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.7.log000644 000765 000024 00000004531 11655503677 023145 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 20cb2cd1-2efd-3947-aaaa-689d4cbe5749 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 06-Nov-2011 13:02:31 Text Last Updated: 06-Nov-2011 13:02:31 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 20cb2cd1-2efd-3947-aaaa-689d4cbe5749 Last changed author: barry Last Changed Date: 06-Nov-2011 13:02:31 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 06-Nov-2011 13:02:31 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 20cb2cd1-2efd-3947-aaaa-689d4cbe5749 Last changed author: barry Last Changed Date: 06-Nov-2011 13:02:31 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.11.log000644 000765 000024 00000011002 13404261102 023175 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.12.log000644 000765 000024 00000007721 13461042336 023213 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T18:36:24.970171Z | test add file 1 2| r3 | barry | 2018-04-02T18:36:25.586206Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.6.log000644 000765 000024 00000064261 12052502536 023127 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 19-Nov-2012 19:13:27 file:///B:/repos/trunk 2 barry 0 19-Nov-2012 19:13:27 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\prop-base b:\wc1\.svn\props b:\wc1\.svn\text-base b:\wc1\.svn\tmp b:\wc1\.svn\tmp\prop-base b:\wc1\.svn\tmp\props b:\wc1\.svn\tmp\text-base b:\wc1\test\.svn\entries b:\wc1\test\.svn\prop-base b:\wc1\test\.svn\props b:\wc1\test\.svn\text-base b:\wc1\test\.svn\tmp b:\wc1\test\.svn\tmp\prop-base b:\wc1\test\.svn\tmp\props b:\wc1\test\.svn\tmp\text-base Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD add file3.txt A file3.txt Info: PYSVN CMD add file4.txt A file4.txt Info: PYSVN CMD add --force file5.txt A file5.txt Info: PYSVN CMD add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A folder3 Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt A b:/wc1/test/file3.txt A b:/wc1/test/file4.txt A b:/wc1/test/file5.txt A b:/wc1/test/folder1 A b:/wc1/test/folder1/file7.txt A b:/wc1/test/folder1/folder2 A b:/wc1/test/folder1/folder2/file8.txt A b:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt A b:/wc2/test/file4.txt A b:/wc2/test/file5.txt A b:/wc2/test/folder1 A b:/wc2/test/folder1/file7.txt A b:/wc2/test/folder1/folder2 A b:/wc2/test/folder1/folder2/file8.txt A b:/wc2/test/folder3 U b:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M b:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U b:/wc2 U b:/wc2/test U b:/wc2/test/file1.txt Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2012-11-19T19:13:28.937665Z | test add file 1 1| r4 | barry | 2012-11-19T19:13:29.374423Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 19-Nov-2012 19:13:30 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A b:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added b:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: b:/wc2/test/file1b.txt =================================================================== --- b:/wc2/test/file1b.txt (revision 7) +++ b:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - import Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:13:29 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:13:29 Text Last Updated: 19-Nov-2012 19:13:29 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 19-Nov-2012 19:13:30 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 19-Nov-2012 19:13:29 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 19-Nov-2012 19:13:28 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 19-Nov-2012 19:13:27 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 19-Nov-2012 19:13:27 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 19-Nov-2012 19:13:29 file:///B:/repos/trunk/test/file1.txt 7 barry 23 19-Nov-2012 19:13:30 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/file2.txt 3 barry 17 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/file3.txt 3 barry 17 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/file4.txt 3 barry 17 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/file5.txt 3 barry 0 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/folder1 3 barry 0 19-Nov-2012 19:13:28 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test b:/wc2/test/file1.txt b:/wc2/test/file1b.txt b:/wc2/test/file2.txt b:/wc2/test/file3.txt b:/wc2/test/file4.txt b:/wc2/test/file5.txt b:/wc2/test/folder1 b:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 19-Nov-2012 19:13:29 b:/wc2/test/file1.txt 7 barry 23 19-Nov-2012 19:13:30 b:/wc2/test/file1b.txt 3 barry 17 19-Nov-2012 19:13:28 b:/wc2/test/file2.txt 3 barry 17 19-Nov-2012 19:13:28 b:/wc2/test/file3.txt 3 barry 17 19-Nov-2012 19:13:28 b:/wc2/test/file4.txt 3 barry 17 19-Nov-2012 19:13:28 b:/wc2/test/file5.txt 3 barry 0 19-Nov-2012 19:13:28 b:/wc2/test/folder1 3 barry 0 19-Nov-2012 19:13:28 b:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A b:/wc2/test/file3b.txt D b:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry b:\wc2 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt 4 3 barry b:\wc2\test\file2.txt 9 9 barry b:\wc2\test\file3b.txt 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D file5.txt Info: PYSVN CMD status M file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: b:\wc2\test\.svn\text-base\file4.txt.svn-base is_binary: False kind: merged_file: b:\wc2\test\.svn\tmp\file4.txt.tmp mime_type: None my_file: b:\wc2\test\.svn\tmp\svn-114E7DDD node_kind: operation: path: b:/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: b:\wc2\test\.svn\tmp\text-base\file4.txt.svn-base A b:/wc2/test/file2b.txt D b:/wc2/test/file2.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R b:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2012-11-19T19:13:35.239459Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 19-Nov-2012 19:13:27 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 19-Nov-2012 19:13:27 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:13:29 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:13:29 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:13:29 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt D b:/wc2/test/file1b.txt D b:/wc2/test/file2b.txt D b:/wc2/test/file3b.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 00e68b39-61ed-714e-973f-d90437a44df9 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 19-Nov-2012 19:13:30 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A b:/wc3/test A b:/wc3/test/file1.txt A b:/wc3/test/file1b.txt A b:/wc3/test/file2b.txt A b:/wc3/test/file3b.txt A b:/wc3/test/file4.txt A b:/wc3/test/file5.txt A b:/wc3/test/folder1 A b:/wc3/test/folder1/file7.txt A b:/wc3/test/folder1/folder2 A b:/wc3/test/folder1/folder2/file8.txt A b:/wc3/test/folder3 U b:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A b:/wc3/test/file-merge-1.txt A b:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A b:/wc3/test-branch A b:/wc3/test-branch/file-merge-1.txt A b:/wc3/test-branch/file-merge-2.txt A b:/wc3/test-branch/file1.txt A b:/wc3/test-branch/file1b.txt A b:/wc3/test-branch/file2b.txt A b:/wc3/test-branch/file3b.txt A b:/wc3/test-branch/file4.txt A b:/wc3/test-branch/file5.txt A b:/wc3/test-branch/folder1 A b:/wc3/test-branch/folder1/file7.txt A b:/wc3/test-branch/folder1/folder2 A b:/wc3/test-branch/folder1/folder2/file8.txt A b:/wc3/test-branch/folder3 U b:/wc3 U b:/wc3/test Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A b:/wc3/test/file-merge-3.txt D b:/wc3/test/file-merge-1.txt M b:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt D b:/wc3/test-branch/file-merge-1.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt merge_begin b:/wc3/test-branch merge_begin b:/wc3/test-branch/file-merge-2.txt merge_completed b:/wc3/test-branch Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed b:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M b:\wc3\test-branch D b:\wc3\test-branch\file-merge-1.txt MM b:\wc3\test-branch\file-merge-2.txt A + b:\wc3\test-branch\file-merge-3.txt M b:\wc3\test-branch\file1.txt M b:\wc3\test-branch\file1b.txt M b:\wc3\test-branch\file2b.txt M b:\wc3\test-branch\file3b.txt M b:\wc3\test-branch\file4.txt M b:\wc3\test-branch\file5.txt Info: PYSVN CMD diff b:\wc3\test-branch Property changes on: b:\wc3\test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Property changes on: b:\wc3\test-branch\file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r15 Property changes on: b:\wc3\test-branch\file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r15 Property changes on: b:\wc3\test-branch\file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r15 Property changes on: b:\wc3\test-branch\file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r15 Property changes on: b:\wc3\test-branch\file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r15 Index: b:/wc3/test-branch/file-merge-1.txt =================================================================== --- b:/wc3/test-branch/file-merge-1.txt (revision 14) +++ b:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: b:/wc3/test-branch/file-merge-2.txt =================================================================== --- b:/wc3/test-branch/file-merge-2.txt (revision 14) +++ b:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: b:\wc3\test-branch\file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Property changes on: b:\wc3\test-branch\file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Property changes on: b:\wc3\test-branch\file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r15 Info: CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - end pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.14.log000644 000765 000024 00000023733 13660472625 023223 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:22 Lock Token: opaquelocktoken:0c72c478-7cfc-354c-be2e-5e5d827f56fc Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 19:35:20 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 19:35:21 B:/wc1/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 19:35:22 3 barry 17 02-Apr-2018 19:35:21 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:21 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 19:35:23 Lock Token: opaquelocktoken:96ae1179-7853-d04c-ba9e-1ca097d043e5 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 19:35:21 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2 3 barry - 02-Apr-2018 19:35:21 B:/wc2/test 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 3 barry 17 02-Apr-2018 19:35:21 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 19:35:23 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2 4 barry - 02-Apr-2018 19:35:24 B:/wc2/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 2d4893c6-4d49-c943-8e23-ac327a7055bc Last changed author: barry Last Changed Date: 02-Apr-2018 19:35:24 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1 4 barry - 02-Apr-2018 19:35:24 B:/wc1/test 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 19:35:24 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.13.log000644 000765 000024 00000007125 13566476551 023232 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.4.log000644 000765 000024 00000002440 11253135715 023120 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.5.log000644 000765 000024 00000017315 11255444226 023134 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python25\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests > setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYSVN=c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests > mkdir testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > cd /d b:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > rem echo echo svnlook info %1 -t %2 ^>b:\test_1.output >b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook info %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >>b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > rem Add one dir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 2-2 Info: pre commit test 1 Info: Transaction( b:\repos, 2-2) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:04.078898Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A b:/wc/a U b:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A b:/wc/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A wc/a/file1.txt A wc/file1.txt Revision 4 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 3-3 Info: pre commit test 1 Info: Transaction( b:\repos, 3-3) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:06.912889Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M wc/a/file1.txt M wc/file1.txt Revision 5 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 4-4 Info: pre commit test 1 Info: Transaction( b:\repos, 4-4) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:08.655342Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D wc/a/file1.txt Revision 6 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 5-5 Info: pre commit test 1 Info: Transaction( b:\repos, 5-5) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:10.698218Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.13.log000644 000765 000024 00000013720 13566476551 023247 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.12.log000644 000765 000024 00000013720 13461042336 023226 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.12.log000644 000765 000024 00000007125 13461042336 023211 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.5.log000644 000765 000024 00000002461 11253135715 023124 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.7.log000644 000765 000024 00000073026 12610411004 023114 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python34.win32\python.exe Username: barry Info: PYSVN CMD c:\python34.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 16-Oct-2015 16:08:27 file:///B:/repos/trunk 2 barry 0 16-Oct-2015 16:08:27 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2015-10-16T15:08:29.255944Z | test add file 1 1| r4 | barry | 2015-10-16T15:08:29.787191Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 16-Oct-2015 16:08:30 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:08:29 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:08:29 Text Last Updated: 16-Oct-2015 16:08:30 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 16-Oct-2015 16:08:31 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 16-Oct-2015 16:08:29 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 16-Oct-2015 16:08:29 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 16-Oct-2015 16:08:27 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 16-Oct-2015 16:08:27 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/file1.txt 7 barry 23 16-Oct-2015 16:08:31 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/file2.txt 3 barry 17 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/file3.txt 3 barry 17 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/file4.txt 3 barry 17 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/file5.txt 3 barry 0 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/folder1 3 barry 0 16-Oct-2015 16:08:29 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 16-Oct-2015 16:08:29 B:/wc2/test/file1.txt 7 barry 23 16-Oct-2015 16:08:31 B:/wc2/test/file1b.txt 3 barry 17 16-Oct-2015 16:08:29 B:/wc2/test/file2.txt 3 barry 17 16-Oct-2015 16:08:29 B:/wc2/test/file3.txt 3 barry 17 16-Oct-2015 16:08:29 B:/wc2/test/file4.txt 3 barry 17 16-Oct-2015 16:08:29 B:/wc2/test/file5.txt 3 barry 0 16-Oct-2015 16:08:29 B:/wc2/test/folder1 3 barry 0 16-Oct-2015 16:08:29 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\.svn\pristine\4e\4e86be31cda02c6a3fb50fe49d570555a9c28d66.svn-base is_binary: False kind: merged_file: B:\wc2\.svn\tmp\file4.txt.tmp mime_type: None my_file: B:\wc2\.svn\tmp\svn-3DEDB045 node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: B:\wc2\.svn\pristine\68\68429c38aebed8d3491b3f4a50041ad273e78cf7.svn-base A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2015-10-16T15:08:36.146593Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 16-Oct-2015 16:08:27 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 16-Oct-2015 16:08:27 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:08:29 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:08:29 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:08:29 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 7b3c85c2-3732-e046-8037-3f0a1cc75c05 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 16-Oct-2015 16:08:30 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_begin B:/wc3/test-branch/file-merge-2.txt merge_completed B:/wc3/test-branch merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch/file-merge-3.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch U B:/wc3/test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt MM B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: B:/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== --- B:/wc3/test-branch/file-merge-3.txt (revision 14) +++ B:/wc3/test-branch/file-merge-3.txt (working copy) Property changes on: B:/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Info: CMD c:\python34.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 16-Oct-2015 16:08:42 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 16-Oct-2015 16:08:42 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 16-Oct-2015 16:08:41 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 16-Oct-2015 16:08:41 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 16-Oct-2015 16:08:40 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 16-Oct-2015 16:08:40 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.14.log000644 000765 000024 00000034126 14046474103 023211 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin C:\Users\barry\Projects\pysvn\Extension\Tests > setlocal C:\Users\barry\Projects\pysvn\Extension\Tests > set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client C:\Users\barry\Projects\pysvn\Extension\Tests > set PYSVN=c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\Projects\pysvn\Extension\Tests > mkdir testroot-04 C:\Users\barry\Projects\pysvn\Extension\Tests > subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-04 C:\Users\barry\Projects\pysvn\Extension\Tests > cd /d B:\ B:\ > C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\Projects\pysvn\Extension\Source;C:\Users\barry\Projects\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:50.317243Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.14.0 svn:txn-user-agent: SVN/1.14.0 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:50.660882Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:51.379636Z svn:log: Add two files svn:txn-client-compat-version: 1.14.0 svn:txn-user-agent: SVN/1.14.0 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:51.785920Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:52.192180Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.14.0 svn:txn-user-agent: SVN/1.14.0 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:52.567155Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:52.973409Z svn:log: Delete one file svn:txn-client-compat-version: 1.14.0 svn:txn-user-agent: SVN/1.14.0 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2020-08-31T14:01:53.301539Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-09.win32.known_good-py2-svn1.13.log000644 000765 000024 00000007721 13566476551 023234 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T18:36:24.970171Z | test add file 1 2| r3 | barry | 2018-04-02T18:36:25.586206Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py2-svn1.10.log000644 000765 000024 00000011002 13260120165 023177 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.6.log000644 000765 000024 00000004452 11723221274 023130 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: d30306ae-2604-c64a-b7d1-fd1bec166339 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 28-Feb-2012 12:56:08 Text Last Updated: 28-Feb-2012 12:56:07 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d30306ae-2604-c64a-b7d1-fd1bec166339 Last changed author: barry Last Changed Date: 28-Feb-2012 12:56:08 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 28-Feb-2012 12:56:07 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d30306ae-2604-c64a-b7d1-fd1bec166339 Last changed author: barry Last Changed Date: 28-Feb-2012 12:56:08 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.12.log000644 000765 000024 00000043466 13461042336 023237 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:56 Lock Token: opaquelocktoken:cb30f534-f114-42d9-8a51-d2efb0986fab Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:50:54 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:50:56 3 barry 16 01-Apr-2018 13:50:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:54 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:50:58 Lock Token: opaquelocktoken:8d98c1c7-fb2c-4377-ab0d-00ac67996da0 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:50:55 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:50:58 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 07c33752-4911-485f-9e7c-24c50e925bfc Last changed author: barry Last Changed Date: 01-Apr-2018 13:50:58 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:50:58 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.4.log000644 000765 000024 00000010103 11331322163 023127 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.3 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Last changed author: barry Last Changed Date: 10-Jan-2006 23:41:45 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.9.log000644 000765 000024 00000011311 12705477130 023151 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.10.log000644 000765 000024 00000002461 13260120165 023171 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.11.log000644 000765 000024 00000015511 13404261102 023217 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T08:58:28.572071Z | test add file 1 2| r3 | barry | 2018-04-01T08:58:29.254129Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.7.log000644 000765 000024 00000013361 11722473713 023161 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.14.log000644 000765 000024 00000042524 13660472625 023243 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.12.log000644 000765 000024 00000006320 13461042336 023203 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.6.log000644 000765 000024 00000152214 11722500535 023144 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 26-Feb-2012 18:43:33 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 26-Feb-2012 18:43:33 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2012-02-26T18:43:35.207911Z | test add file 1 1| r6 | barry | 2012-02-26T18:43:39.154629Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2012-02-26T18:43:35.207911Z | test add file 6 1| r4 | barry | 2012-02-26T18:43:36.154939Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 26-Feb-2012 18:43:41 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - import Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 26-Feb-2012 18:43:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 26-Feb-2012 18:43:39 Text Last Updated: 26-Feb-2012 18:43:40 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 26-Feb-2012 18:43:43 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 26-Feb-2012 18:43:39 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 26-Feb-2012 18:43:37 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 26-Feb-2012 18:43:36 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 26-Feb-2012 18:43:35 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 26-Feb-2012 18:43:33 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 26-Feb-2012 18:43:33 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 26-Feb-2012 18:43:39 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 26-Feb-2012 18:43:43 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 26-Feb-2012 18:43:35 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 26-Feb-2012 18:43:39 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 26-Feb-2012 18:43:43 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 26-Feb-2012 18:43:35 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/text-base/file4.txt.svn-base is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/file4.txt.tmp mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/svn-8ZbhHK node_kind: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/text-base/file4.txt.svn-base A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2012-02-26T18:43:53.397717Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 26-Feb-2012 18:43:33 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 26-Feb-2012 18:43:33 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 26-Feb-2012 18:43:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 26-Feb-2012 18:43:39 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 26-Feb-2012 18:43:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: cfe626db-dcfd-4eb6-b785-f52740c120f5 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 26-Feb-2012 18:43:41 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.8.log000644 000765 000024 00000002461 12164247515 023133 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.13.log000644 000765 000024 00000004720 13566476551 023226 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:43:05 Text Last Updated: 27-Apr-2016 20:43:05 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:43:05 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-08.win32.known_good-py3-svn1.7.log000644 000765 000024 00000007225 12273461722 023142 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >endlocal C:\wc\svn\pysvn\Extension\Tests >echo. C:\wc\svn\pysvn\Extension\Tests >echo Info: CMD Info: CMD C:\wc\svn\pysvn\Extension\Tests >goto :eof pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.14.log000644 000765 000024 00000011311 13660472625 023232 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.9.log000644 000765 000024 00000033642 12677513364 023152 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.305330Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:21.680347Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.133575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.508576Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:22.883708Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.289937Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:23.664960Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-01T15:38:24.071188Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-04.win32.known_good-py3-svn1.8.log000644 000765 000024 00000032012 12177447646 023143 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-04T12:55:11.892598Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-04T12:55:12.017334Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-04T12:55:12.609830Z svn:log: Add two files svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-04T12:55:12.765750Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-04T12:55:13.124366Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-04T12:55:13.327062Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-08-04T12:55:13.685678Z svn:log: Delete one file svn:txn-client-compat-version: 1.8.0 Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-08-04T12:55:13.841598Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.12.log000644 000765 000024 00000004720 13461042336 023205 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:43:05 Text Last Updated: 27-Apr-2016 20:43:05 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:43:05 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.9.log000644 000765 000024 00000002461 12677513364 023143 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.7.log000644 000765 000024 00000171566 12610521406 023155 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 17-Oct-2015 20:29:15 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 17-Oct-2015 20:29:15 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2015-10-17T19:29:16.735650Z | test add file 1 1| r6 | barry | 2015-10-17T19:29:20.114417Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2015-10-17T19:29:16.735650Z | test add file 6 1| r4 | barry | 2015-10-17T19:29:17.108770Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 17-Oct-2015 20:29:22 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:29:20 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:29:20 Text Last Updated: 17-Oct-2015 20:29:21 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 17-Oct-2015 20:29:23 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 17-Oct-2015 20:29:20 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 17-Oct-2015 20:29:18 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 17-Oct-2015 20:29:17 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 17-Oct-2015 20:29:16 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 17-Oct-2015 20:29:15 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 17-Oct-2015 20:29:15 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 17-Oct-2015 20:29:20 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 17-Oct-2015 20:29:23 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 17-Oct-2015 20:29:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 17-Oct-2015 20:29:20 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 17-Oct-2015 20:29:23 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 17-Oct-2015 20:29:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/pristine/df/df6174c0ddc76db371593ea5ac22d62b9e6276dc.svn-base is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/tmp/file4.txt.tmp mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/tmp/svn-Pd68Ap node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/.svn/pristine/45/4554e019d2005c135cc0e5355b9cdb849ab46ed3.svn-base A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2015-10-17T19:29:32.249328Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 17-Oct-2015 20:29:15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 17-Oct-2015 20:29:15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:29:20 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:29:20 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 17-Oct-2015 20:29:20 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 4ca9d419-2541-404f-ae17-a0bb52316d2b Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 17-Oct-2015 20:29:22 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 17-Oct-2015 20:29:42 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.13.log000644 000765 000024 00000006320 13566476551 023224 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.6.log000644 000765 000024 00000011565 11722500535 023155 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one file_a1.txt changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_a1.txt changelist-one file_b1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.10.log000644 000765 000024 00000015511 13260120165 023221 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T08:58:28.572071Z | test add file 1 2| r3 | barry | 2018-04-01T08:58:29.254129Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.11.log000644 000765 000024 00000002461 13404261102 023167 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.8.log000644 000765 000024 00000011131 12705411537 023147 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: d230889c-a17f-4475-ad79-37afdc2dad7f Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 12:13:12 Text Last Updated: 19-Apr-2016 12:13:12 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: d230889c-a17f-4475-ad79-37afdc2dad7f Last changed author: barry Last Changed Date: 19-Apr-2016 12:13:12 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 12:13:12 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: d230889c-a17f-4475-ad79-37afdc2dad7f Last changed author: barry Last Changed Date: 19-Apr-2016 12:13:12 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.12.log000644 000765 000024 00000015511 13461042336 023231 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T08:58:28.572071Z | test add file 1 2| r3 | barry | 2018-04-01T08:58:29.254129Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.13.log000644 000765 000024 00000002461 13566476551 023222 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.8.log000644 000765 000024 00000004621 12710210640 023120 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 362be527-26e3-be45-b151-d1db28b59f2c Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 19:54:45 Text Last Updated: 27-Apr-2016 19:54:45 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 362be527-26e3-be45-b151-d1db28b59f2c Last changed author: barry Last Changed Date: 27-Apr-2016 19:54:45 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 19:54:45 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 362be527-26e3-be45-b151-d1db28b59f2c Last changed author: barry Last Changed Date: 27-Apr-2016 19:54:45 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.11.log000644 000765 000024 00000006320 13404261102 023171 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.14.log000644 000765 000024 00000001411 13660472625 023227 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.9.log000644 000765 000024 00000074076 12710213263 023134 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 27-Apr-2016 20:41:30 file:///B:/repos/trunk 2 barry 0 27-Apr-2016 20:41:30 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T19:41:31.483299Z | test add file 1 2| r4 | barry | 2016-04-27T19:41:32.077099Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 27-Apr-2016 20:41:33 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:41:32 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:41:32 Text Last Updated: 27-Apr-2016 20:41:32 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 27-Apr-2016 20:41:34 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 20:41:32 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 20:41:31 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 20:41:30 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 20:41:29 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 27-Apr-2016 20:41:32 file:///B:/repos/trunk/test/file1.txt 7 barry 23 27-Apr-2016 20:41:34 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/file2.txt 3 barry 17 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/file3.txt 3 barry 17 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/file4.txt 3 barry 17 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 20:41:31 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 27-Apr-2016 20:41:32 B:/wc2/test/file1.txt 7 barry 23 27-Apr-2016 20:41:34 B:/wc2/test/file1b.txt 3 barry 17 27-Apr-2016 20:41:31 B:/wc2/test/file2.txt 3 barry 17 27-Apr-2016 20:41:31 B:/wc2/test/file3.txt 3 barry 17 27-Apr-2016 20:41:31 B:/wc2/test/file4.txt 3 barry 17 27-Apr-2016 20:41:31 B:/wc2/test/file5.txt 3 barry 0 27-Apr-2016 20:41:31 B:/wc2/test/folder1 3 barry 0 27-Apr-2016 20:41:31 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2016-04-27T19:41:39.640468Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:41:30 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:41:30 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:41:32 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:41:32 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:41:32 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 2065aacd-92ac-0c4f-aa01-fa9cfb6be9ec Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 20:41:33 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python35.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 20:41:46 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 20:41:46 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 20:41:45 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 20:41:45 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 27-Apr-2016 20:41:44 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 27-Apr-2016 20:41:44 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.5.log000644 000765 000024 00000147156 11264417713 023162 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 11-Oct-2009 19:01:07 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 11-Oct-2009 19:01:07 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/.svn/format /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/entries /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/.svn/format Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt A test/file6.txt A test/folder1 A test/folder1/file7.txt A test/folder1/folder2 A test/folder1/folder2/file8.txt A test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2009-10-11T18:01:09.228264Z | test add file 1 1| r6 | barry | 2009-10-11T18:01:13.188911Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 0| r3 | barry | 2009-10-11T18:01:09.228264Z | test add file 6 1| r4 | barry | 2009-10-11T18:01:10.188634Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 11-Oct-2009 19:01:15 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test A wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - import Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:01:13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:01:13 Text Last Updated: 11-Oct-2009 19:01:14 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 11-Oct-2009 19:01:16 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 11-Oct-2009 19:01:13 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 11-Oct-2009 19:01:11 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 11-Oct-2009 19:01:10 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 11-Oct-2009 19:01:09 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 11-Oct-2009 19:01:07 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 11-Oct-2009 19:01:07 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 11-Oct-2009 19:01:13 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 11-Oct-2009 19:01:16 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 11-Oct-2009 19:01:09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 11-Oct-2009 19:01:13 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 11-Oct-2009 19:01:16 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 11-Oct-2009 19:01:09 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/text-base/file4.txt.svn-base' is_binary: False kind: merged_file: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/tempfile.3.tmp' mime_type: None my_file: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/tempfile.2.tmp' node_kind: path: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt' property_name: None reason: their_file: '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/.svn/tmp/text-base/file4.txt.svn-base' A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2009-10-11T18:01:26.342683Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 19:01:07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 19:01:07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:01:13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:01:13 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 19:01:13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 9a47ed63-78fc-47d8-9eed-4b5ae372f4dc Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 11-Oct-2009 19:01:15 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A test/file-merge-1.txt A test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt MM /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17* Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r17 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r17 Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/3.1/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.14.log000644 000765 000024 00000176160 14175474070 023242 0ustar00barrystaff000000 000000 WorkDir: /home/barry/Projects/pysvn/Extension PYTHON: /usr/bin/python Username: barry Info: CWD: /home/barry/Projects/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python /home/barry/Projects/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /home/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 30-Jan-2022 11:33:14 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 30-Jan-2022 11:33:14 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/bin/python /home/barry/Projects/pysvn/Extension/Tests/find.py /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: cd /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2022-01-30T11:33:15.638655Z | test add file 1 2| r6 | barry | 2022-01-30T11:33:16.621842Z | line 2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2022-01-30T11:33:15.638655Z | test add file 6 2| r4 | barry | 2022-01-30T11:33:15.921450Z | test mod file 6 Info: Testing - cat Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 30-Jan-2022 11:33:17 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - diff none utf-8 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff --return-bytes /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 b'Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt' b'===================================================================' b'--- /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt\t(revision 9)' b'+++ /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt\t(working copy)' b'@@ -1,2 +1,4 @@' b' test add file 1' b' line 2' b'+new line' b'+Non UTF-8 \xc0 is 0xc0' b'' Info: Testing - export Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 11:33:16 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 11:33:16 Text Last Updated: 30-Jan-2022 11:33:16 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 30-Jan-2022 11:33:18 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 30-Jan-2022 11:33:16 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 30-Jan-2022 11:33:16 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 30-Jan-2022 11:33:15 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 30-Jan-2022 11:33:15 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 30-Jan-2022 11:33:14 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 30-Jan-2022 11:33:14 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 30-Jan-2022 11:33:16 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 30-Jan-2022 11:33:18 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 30-Jan-2022 11:33:15 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 30-Jan-2022 11:33:16 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 30-Jan-2022 11:33:18 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 30-Jan-2022 11:33:15 /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos'} their_file: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2022-01-30T11:33:21.578809Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /home/barry/Projects/pysvn/Extension/Tests/testroot-01/root Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos /home/barry/Projects/pysvn/Extension/Tests/testroot-01/root Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Jan-2022 11:33:14 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Jan-2022 11:33:14 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 11:33:16 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 11:33:16 Info: Testing - switch Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 11:33:16 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 5e9cb262-bc5e-422c-8c51-8a1f9a4f2951 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 30-Jan-2022 11:33:17 Info: Testing - update - see above Info: Testing - merge Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/bin/python /home/barry/Projects/pysvn/Extension/Tests/test_01_set_get_tests.py /home/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /home/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///home/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test U /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /home/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 30-Jan-2022 11:33:25 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 30-Jan-2022 11:33:25 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 30-Jan-2022 11:33:25 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 30-Jan-2022 11:33:25 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 30-Jan-2022 11:33:24 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 30-Jan-2022 11:33:24 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py3-svn1.14.log000644 000765 000024 00000003674 14046474103 023213 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.10.log000644 000765 000024 00000005066 14046541473 023215 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: d1ebff24-9b00-0a4a-9f99-7f2852c3ff8b Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 11-May-2021 17:41:42 Text Last Updated: 11-May-2021 17:41:41 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d1ebff24-9b00-0a4a-9f99-7f2852c3ff8b Last changed author: barry Last Changed Date: 11-May-2021 17:41:42 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 11-May-2021 17:41:41 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d1ebff24-9b00-0a4a-9f99-7f2852c3ff8b Last changed author: barry Last Changed Date: 11-May-2021 17:41:42 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.11.log000644 000765 000024 00000004720 13404261102 023173 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:43:05 Text Last Updated: 27-Apr-2016 20:43:05 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:43:05 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: bb61a85c-026b-c047-a48e-48865e54b172 Last changed author: barry Last Changed Date: 27-Apr-2016 20:43:05 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.8.log000644 000765 000024 00000072724 12710210640 023125 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 27-Apr-2016 20:02:26 file:///B:/repos/trunk 2 barry 0 27-Apr-2016 20:02:26 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T19:02:28.012670Z | test add file 1 2| r4 | barry | 2016-04-27T19:02:28.997253Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 27-Apr-2016 20:02:30 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:02:28 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:02:28 Text Last Updated: 27-Apr-2016 20:02:29 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 27-Apr-2016 20:02:31 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 20:02:28 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 20:02:28 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 20:02:26 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 20:02:26 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/file1.txt 7 barry 23 27-Apr-2016 20:02:31 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/file2.txt 3 barry 17 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/file3.txt 3 barry 17 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/file4.txt 3 barry 17 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 20:02:28 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 27-Apr-2016 20:02:28 B:/wc2/test/file1.txt 7 barry 23 27-Apr-2016 20:02:31 B:/wc2/test/file1b.txt 3 barry 17 27-Apr-2016 20:02:28 B:/wc2/test/file2.txt 3 barry 17 27-Apr-2016 20:02:28 B:/wc2/test/file3.txt 3 barry 17 27-Apr-2016 20:02:28 B:/wc2/test/file4.txt 3 barry 17 27-Apr-2016 20:02:28 B:/wc2/test/file5.txt 3 barry 0 27-Apr-2016 20:02:28 B:/wc2/test/folder1 3 barry 0 27-Apr-2016 20:02:28 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2016-04-27T19:02:37.607923Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:02:26 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 20:02:26 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:02:28 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:02:28 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 27-Apr-2016 20:02:28 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: f0ed624c-7490-e149-9b2f-5b95e2bd027b Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 20:02:30 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15 Info: CMD c:\python35.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 20:02:45 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 20:02:45 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 20:02:44 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 20:02:44 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 27-Apr-2016 20:02:43 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 27-Apr-2016 20:02:43 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-11.unix.known_good-py2-svn1.14.log000644 000765 000024 00000007035 13660472625 023236 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.14.log000644 000765 000024 00000005174 13660472625 023216 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.10.log000644 000765 000024 00000006320 13260120165 023173 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py2-svn1.9.log000644 000765 000024 00000004720 12710213263 023125 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 27-Apr-2016 20:36:28 Text Last Updated: 27-Apr-2016 20:36:28 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 27-Apr-2016 20:36:28 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 83a16b97-297d-754c-9004-293b55a6ce50 Last changed author: barry Last Changed Date: 27-Apr-2016 20:36:28 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.5.log000644 000765 000024 00000011250 11255423566 023154 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/bin/python2.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.3 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt changelist-one file_a1.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_b1.txt changelist-one file_a1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.12.log000644 000765 000024 00000002461 13461042336 023201 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.13.log000644 000765 000024 00000015511 13566476551 023252 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T08:58:28.572071Z | test add file 1 2| r3 | barry | 2018-04-01T08:58:29.254129Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.12.log000644 000765 000024 00000042524 13461042336 023230 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.6.log000644 000765 000024 00000005534 11723221274 023133 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A file_b2.txt The system cannot find the batch label specified - cmd_pysvn Info: PYSVN CMD status --verbose b:/wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file_a1.txt 4 4 barry b:\wc1\test\file_a2.txt 5 5 barry b:\wc1\test\file_b1.txt A 0 -1 None b:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one file_a1.txt changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_a1.txt changelist-one file_b1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.11.log000644 000765 000024 00000001411 13404261102 023202 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.4.log000644 000765 000024 00000027312 11253135715 023150 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Users/barry/bin/python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Users/barry/bin/python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:20 Lock Token: opaquelocktoken:c3104da4-2f7d-490c-8590-65d020e0a4c6 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:24 Lock Token: opaquelocktoken:a2aaf3f2-f065-4f75-b7f8-dc67885687a4 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 19:07:18 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:26 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.14.log000644 000765 000024 00000006320 13660472625 023216 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.10.log000644 000765 000024 00000005174 13260120165 023173 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-11.unix.known_good-py2-svn1.10.log000644 000765 000024 00000007035 13262407737 023232 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.11.log000644 000765 000024 00000173635 13404261102 023223 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 1 2| r6 | barry | 2018-04-01T08:55:52.264880Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 6 2| r4 | barry | 2018-04-01T08:55:49.246188Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 09:55:56 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Text Last Updated: 01-Apr-2018 09:55:53 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 09:55:57 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 09:55:52 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 09:55:50 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 09:55:49 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 09:55:48 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 09:55:46 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 09:55:45 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 09:55:52 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 09:55:52 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T08:56:09.258530Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 09:55:56 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py3-svn1.11.log000644 000765 000024 00000003526 13404261102 023172 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.9.log000644 000765 000024 00000013570 12564665666 023205 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.5.log000644 000765 000024 00000001411 11253135715 023137 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.12.log000644 000765 000024 00000011311 13461042336 023217 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.4.log000644 000765 000024 00000001411 11253135715 023136 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.13.log000644 000765 000024 00000011311 13566476551 023240 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.5.log000644 000765 000024 00000015001 11331322163 023111 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Username: barry Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt U b:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:24 Lock Token: opaquelocktoken:01ee0e7b-022a-8b4d-8cd4-82d52a2125a2 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 16:21:21 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: b:/wc2/test/file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:22 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 16:21:26 Lock Token: opaquelocktoken:a24fb0d6-0286-0040-9fa4-2feb7c02c4fa Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 16:21:23 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test M K 3 3 barry b:\wc2\test\file1.txt M 3 3 barry b:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test K 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U b:/wc1 U b:/wc1/test U b:/wc1/test/file1.txt U b:/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 4 4 barry b:\wc1\test 4 4 barry b:\wc1\test\file1.txt 4 4 barry b:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///b:/repos Repository UUID: cc4484c8-542a-2742-be80-984bdf6d37c5 Last changed author: barry Last Changed Date: 23-Sep-2006 16:21:27 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.14.log000644 000765 000024 00000005066 14046474103 023214 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 3d53c279-cc39-ac41-9de3-1e4dd4d23914 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 31-Aug-2020 15:02:39 Text Last Updated: 31-Aug-2020 15:02:38 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 3d53c279-cc39-ac41-9de3-1e4dd4d23914 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:39 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 31-Aug-2020 15:02:38 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 3d53c279-cc39-ac41-9de3-1e4dd4d23914 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:39 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-08.unix.known_good-py3-svn1.8.log000644 000765 000024 00000012742 12271177713 023166 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python /home/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-11.win32.known_good-py3-svn1.10.log000644 000765 000024 00000003674 14046541473 023214 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.10.log000644 000765 000024 00000177405 14175521053 023233 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/Projects/pysvn/Extension PYTHON: /usr/local/bin/python3.7 Username: barry Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.7 /Users/barry/Projects/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 30-Jan-2022 14:13:08 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 30-Jan-2022 14:13:08 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.7 /Users/barry/Projects/pysvn/Extension/Tests/find.py /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2022-01-30T14:13:11.340773Z | test add file 1 2| r6 | barry | 2022-01-30T14:13:15.208420Z | line 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2022-01-30T14:13:11.340773Z | test add file 6 2| r4 | barry | 2022-01-30T14:13:12.245651Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 30-Jan-2022 14:13:19 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - diff none utf-8 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff --return-bytes /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 b'Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt' b'===================================================================' b'--- /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt\t(revision 9)' b'+++ /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt\t(working copy)' b'@@ -1,2 +1,4 @@' b' test add file 1' b' line 2' b'+new line' b'+Non UTF-8 \xc0 is 0xc0' b'' Info: Testing - export Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 14:13:15 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 14:13:15 Text Last Updated: 30-Jan-2022 14:13:16 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 30-Jan-2022 14:13:20 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 30-Jan-2022 14:13:15 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 30-Jan-2022 14:13:13 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 30-Jan-2022 14:13:12 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 30-Jan-2022 14:13:11 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 30-Jan-2022 14:13:08 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 30-Jan-2022 14:13:08 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 30-Jan-2022 14:13:15 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 30-Jan-2022 14:13:20 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 30-Jan-2022 14:13:11 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 30-Jan-2022 14:13:15 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 30-Jan-2022 14:13:20 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 30-Jan-2022 14:13:11 /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2022-01-30T14:13:32.212620Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Jan-2022 14:13:08 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 30-Jan-2022 14:13:08 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 14:13:15 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 14:13:15 Info: Testing - switch Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 30-Jan-2022 14:13:15 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 95ec2ced-dbf0-48d6-a60a-112f35543d36 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 30-Jan-2022 14:13:19 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.7 /Users/barry/Projects/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/Projects/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 30-Jan-2022 14:13:42 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 30-Jan-2022 14:13:42 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 30-Jan-2022 14:13:42 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 30-Jan-2022 14:13:42 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 30-Jan-2022 14:13:42 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 30-Jan-2022 14:13:41 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.unix.known_good-py2-svn1.11.log000644 000765 000024 00000007035 13404261102 023211 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.11.log000644 000765 000024 00000005174 13404261102 023171 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.5.log000644 000765 000024 00000027312 11253135715 023151 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Users/barry/bin/python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Users/barry/bin/python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:20 Lock Token: opaquelocktoken:c3104da4-2f7d-490c-8590-65d020e0a4c6 Lock Comment: Schedule: normal Text Last Updated: 23-Sep-2006 19:07:15 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M test/file1.txt M test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 23-Sep-2006 19:07:24 Lock Token: opaquelocktoken:a2aaf3f2-f065-4f75-b7f8-dc67885687a4 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 23-Sep-2006 19:07:18 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M test/file1.txt M test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 532b0617-ff1c-4f01-b9b5-ab21cb205ba3 Last changed author: barry Last Changed Date: 23-Sep-2006 19:07:26 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.10.log000644 000765 000024 00000001411 13260120165 023204 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.7.log000644 000765 000024 00000006122 12573345463 023141 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.13.log000644 000765 000024 00000042524 13566476551 023251 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-07.win32.known_good-py2-svn1.5.log000644 000765 000024 00000005556 11255444226 023142 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry Info: PYSVN CMD c:\python31\python.exe C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A file_b2.txt The system cannot find the batch label specified - cmd_pysvn Info: PYSVN CMD status --verbose b:/wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file_a1.txt 4 4 barry b:\wc1\test\file_a2.txt 5 5 barry b:\wc1\test\file_b1.txt A 0 -1 None b:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-two file_a2.txt changelist-one file_b1.txt changelist-two file_b2.txt changelist-one file_a1.txt After add_to_changelist show changelist-two changelist-two file_a2.txt changelist-two file_b2.txt After remove_from_changelists all changelist-two show all changelist-one file_b1.txt changelist-one file_a1.txt After remove_from_changelists all show all changelist-one file_b1.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.11.log000644 000765 000024 00000042524 13404261102 023216 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.14.log000644 000765 000024 00000015511 13660472625 023244 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-01T08:58:28.572071Z | test add file 1 2| r3 | barry | 2018-04-01T08:58:29.254129Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.9.log000644 000765 000024 00000042524 12705456075 023167 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.12.log000644 000765 000024 00000001411 13461042336 023214 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.7.log000644 000765 000024 00000030771 11646621252 023160 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python /home/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 253c7a72-4057-4a2c-bd81-09e280fdb83c Last changed author: barry Last Changed Date: 31-Jul-2011 20:13:59 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 31-Jul-2011 20:13:59 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 253c7a72-4057-4a2c-bd81-09e280fdb83c Last changed author: barry Last Changed Date: 31-Jul-2011 20:13:59 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 31-Jul-2011 20:14:00 Lock Token: opaquelocktoken:f9b9410e-3ca2-44b1-a71d-349171145d1b Lock Comment: Schedule: normal Text Last Updated: 31-Jul-2011 20:13:59 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 253c7a72-4057-4a2c-bd81-09e280fdb83c Last changed author: barry Last Changed Date: 31-Jul-2011 20:13:59 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 31-Jul-2011 20:14:00 Lock Token: opaquelocktoken:6fa5172e-5fe3-4959-85ef-caa61a29c7b6 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 31-Jul-2011 20:14:00 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 253c7a72-4057-4a2c-bd81-09e280fdb83c Last changed author: barry Last Changed Date: 31-Jul-2011 20:14:01 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.13.log000644 000765 000024 00000005174 13566476551 023224 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-11.unix.known_good-py2-svn1.13.log000644 000765 000024 00000007035 13566476551 023244 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.12.log000644 000765 000024 00000173635 13461042336 023235 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 1 2| r6 | barry | 2018-04-01T08:55:52.264880Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 6 2| r4 | barry | 2018-04-01T08:55:49.246188Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 09:55:56 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Text Last Updated: 01-Apr-2018 09:55:53 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 09:55:57 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 09:55:52 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 09:55:50 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 09:55:49 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 09:55:48 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 09:55:46 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 09:55:45 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 09:55:52 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 09:55:52 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T08:56:09.258530Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 09:55:56 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-11.win32.known_good-py3-svn1.12.log000644 000765 000024 00000003526 13461042336 023204 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.11.log000644 000765 000024 00000011311 13404261102 023205 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.6.log000644 000765 000024 00000001411 11253135715 023140 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.7.log000644 000765 000024 00000015073 12177165073 023142 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: b557e329-43a1-1e4a-960c-dfe06270db71 Last changed author: barry Last Changed Date: 03-Aug-2013 12:30:14 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 03-Aug-2013 12:30:14 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: b557e329-43a1-1e4a-960c-dfe06270db71 Last changed author: barry Last Changed Date: 03-Aug-2013 12:30:14 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Aug-2013 12:30:15 Lock Token: opaquelocktoken:51770ee8-1176-ae46-a9d9-364b84212927 Lock Comment: Schedule: normal Text Last Updated: 03-Aug-2013 12:30:14 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: b557e329-43a1-1e4a-960c-dfe06270db71 Last changed author: barry Last Changed Date: 03-Aug-2013 12:30:14 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Aug-2013 12:30:15 Lock Token: opaquelocktoken:a854b8bd-4809-6e4d-b09d-b564dbc62c42 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 03-Aug-2013 12:30:14 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: b557e329-43a1-1e4a-960c-dfe06270db71 Last changed author: barry Last Changed Date: 03-Aug-2013 12:30:16 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.9.log000644 000765 000024 00000007727 13437262373 023160 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python37.Win64\python.exe Username: barry Info: PYSVN CMD c:\python37.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2019-03-04T16:56:45.165003Z | test add file 1 2| r3 | barry | 2019-03-04T16:56:45.618627Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.8.log000644 000765 000024 00000007476 13070511010 023132 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python33.Win32\python.exe Username: barry Info: PYSVN CMD c:\python33.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2017-04-03T18:18:13.917037Z | test add file 1 2| r3 | barry | 2017-04-03T18:18:14.557794Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.6.log000644 000765 000024 00000014734 11723221274 023134 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt U b:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 4517b923-dbb7-cd4d-ad80-263ab22bc0b8 Last changed author: barry Last Changed Date: 28-Feb-2012 13:01:48 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 28-Feb-2012 13:01:47 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: b:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 4517b923-dbb7-cd4d-ad80-263ab22bc0b8 Last changed author: barry Last Changed Date: 28-Feb-2012 13:01:48 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 28-Feb-2012 13:01:49 Lock Token: opaquelocktoken:a6e9e98b-840c-6d45-ada8-064c0bbd60fd Lock Comment: Schedule: normal Text Last Updated: 28-Feb-2012 13:01:47 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M b:/wc2/test/file1.txt M b:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: b:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 4517b923-dbb7-cd4d-ad80-263ab22bc0b8 Last changed author: barry Last Changed Date: 28-Feb-2012 13:01:48 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 28-Feb-2012 13:01:50 Lock Token: opaquelocktoken:11fb5e41-8e7f-3940-bc05-69cacb5cff1f Lock Comment: Stealing lock Schedule: normal Text Last Updated: 28-Feb-2012 13:01:48 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test M K 3 3 barry b:\wc2\test\file1.txt M 3 3 barry b:\wc2\test\file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M b:/wc2/test/file1.txt M b:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test K 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry b:\wc2 3 3 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 4 4 barry b:\wc2\test\file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 2 2 barry b:\wc1\test K 3 3 barry b:\wc1\test\file1.txt 3 3 barry b:\wc1\test\file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U b:/wc1 U b:/wc1/test U b:/wc1/test/file1.txt U b:/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry b:\wc1 4 4 barry b:\wc1\test 4 4 barry b:\wc1\test\file1.txt 4 4 barry b:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 4517b923-dbb7-cd4d-ad80-263ab22bc0b8 Last changed author: barry Last Changed Date: 28-Feb-2012 13:01:51 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-06.unix.known_good-py2-svn1.10.log000644 000765 000024 00000011311 13260120165 023207 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /usr/bin/python2.7 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.7 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Test - info of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Apr-2016 19:50:51 Text Last Updated: 19-Apr-2016 19:50:50 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 file1.txt Path: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test/file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Apr-2016 19:50:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-06/repos Repository UUID: 17bd8196-cb14-4d3b-bf42-c7321fabef47 Last changed author: barry Last Changed Date: 19-Apr-2016 19:50:51 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.7.log000644 000765 000024 00000001411 11603642311 023133 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-11.win32.known_good-py3-svn1.13.log000644 000765 000024 00000003526 13566476551 023225 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir Info: CMD mkdir testroot-11 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-11 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-11 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-a.sh - test add file 2 Info: PYSVN CMD add folder2\file-a.sh A B:/wc1/folder2/file-a.sh Info: Create File folder2\file-a.cmd - test add file 3 Info: PYSVN CMD add folder2\file-a.cmd A B:/wc1/folder2/file-a.cmd Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-a.cmd A B:/wc1/folder2/file-a.sh commit_finalizing . Revision 2 Info: test list no patterns Info: PYSVN CMD list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh Info: test list 1 pattern Info: PYSVN CMD list --recursive --search "*.txt" /folder1/file-a.txt Info: test list 2 patterns Info: PYSVN CMD list --recursive --search "*.sh" --search "*.txt" /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-01.unix.known_good-py3-svn1.13.log000644 000765 000024 00000173635 13566476551 023256 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry - 01-Apr-2018 09:55:46 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 1 2| r6 | barry | 2018-04-01T08:55:52.264880Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2018-04-01T08:55:48.656649Z | test add file 6 2| r4 | barry | 2018-04-01T08:55:49.246188Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry - 01-Apr-2018 09:55:56 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Text Last Updated: 01-Apr-2018 09:55:53 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 01-Apr-2018 09:55:57 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 01-Apr-2018 09:55:52 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 01-Apr-2018 09:55:50 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 01-Apr-2018 09:55:49 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 01-Apr-2018 09:55:48 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 01-Apr-2018 09:55:46 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 01-Apr-2018 09:55:45 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 01-Apr-2018 09:55:52 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry - 01-Apr-2018 09:55:48 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 01-Apr-2018 09:55:52 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 01-Apr-2018 09:55:57 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry - 01-Apr-2018 09:55:48 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2018-04-01T08:56:09.258530Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 01-Apr-2018 09:55:46 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 01-Apr-2018 09:55:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 26afa6a8-5039-46b3-bd95-8bf0b505475b Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 01-Apr-2018 09:55:56 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 01-Apr-2018 09:56:21 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 01-Apr-2018 09:56:20 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test_07_changelist.py000644 000765 000024 00000002071 11664431657 020425 0ustar00barrystaff000000 000000 import pysvn import sys c = pysvn.Client( sys.argv[1] ) c.exception_style = 1 c.add_to_changelist( 'file_a1.txt', 'changelist-one' ) c.add_to_changelist( 'file_a2.txt', 'changelist-two' ) c.add_to_changelist( 'file_b1.txt', 'changelist-one' ) c.add_to_changelist( 'file_b2.txt', 'changelist-two' ) print( 'After add_to_changelist show all' ) for path, changelist in sorted( c.get_changelist( '.' ) ): print( ' %s %s' % (changelist, path) ) print( 'After add_to_changelist show changelist-two' ) for path, changelist in sorted( c.get_changelist( '.', changelists=['changelist-two'] ) ): print( ' %s %s' % (changelist, path) ) c.remove_from_changelists( '.', changelists=['changelist-two'] ) print( 'After remove_from_changelists all changelist-two show all' ) for path, changelist in sorted( c.get_changelist( '.' ) ): print( ' %s %s' % (changelist, path) ) print( 'After remove_from_changelists all show all' ) c.remove_from_changelists( 'file_a1.txt' ) for path, changelist in sorted( c.get_changelist( '.' ) ): print( ' %s %s' % (changelist, path) ) pysvn-1.9.22/Tests/test-11.unix.known_good-py2-svn1.12.log000644 000765 000024 00000007035 13461042336 023223 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-11 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk -m test-11 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.sh A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: add folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.cmd A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1/folder2/file-a.sh commit_finalizing . Revision 2 test list no patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive /folder1 /folder1/file-a.txt /folder2 /folder2/file-a.cmd /folder2/file-a.sh test list 1 pattern Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.txt /folder1/file-a.txt test list 2 patterns Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-11/wc1 Info: pysvn command: list --recursive --search *.sh --search *.txt /folder1/file-a.txt /folder2/file-a.sh pysvn-1.9.22/Tests/test-10.win32.known_good-py2-svn1.12.log000644 000765 000024 00000005174 13461042336 023203 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test_07_move2.py000644 000765 000024 00000001105 11076210000 017277 0ustar00barrystaff000000 000000 import pysvn import sys c = pysvn.Client( sys.argv[1] ) c.exception_style = 1 src_list = [ 'file_a1.txt', 'file_a2.txt', ] print( 'Info: Move2 will succeed' ) c.move2( src_list, 'wc_move_1', make_parents=True, move_as_child=True ) src_list = [ 'file_b1.txt', 'file_b2.txt', ] print( 'Info: Move2 will raise error' ) try: c.move2( src_list, 'wc_move_3', make_parents=True ) except pysvn.ClientError as e: print( 'Info: Error: %r' % e.args[0] ) for message, code in e.args[1]: print( 'Info: Code: %d, Message: %r' % (code, message) ) pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.6.log000644 000765 000024 00000030654 11253135715 023155 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Mar-2009 14:58:20 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Mar-2009 14:58:22 Lock Token: opaquelocktoken:0939893a-7e80-44d4-ae76-cccbb5c5a023 Lock Comment: Schedule: normal Text Last Updated: 01-Mar-2009 14:58:20 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:20 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Mar-2009 14:58:23 Lock Token: opaquelocktoken:ff31e1cb-cae4-435d-98b2-f693fa6c2e39 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Mar-2009 14:58:21 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 06ed4d2f-476d-4582-9569-b3da6af11f05 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:23 Last changed revision: 4 Node kind: file pysvn-1.9.22/Tests/test-03.unix.known_good-py2-svn1.13.log000644 000765 000024 00000001411 13566476551 023235 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.8.log000644 000765 000024 00000041754 12703202520 023150 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-12T14:04:04.480623Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-12T14:04:04.543706Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-12T14:04:05.250226Z svn:log: Add two files svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-12T14:04:05.325273Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-12T14:04:06.203136Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-12T14:04:06.275837Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-12T14:04:07.193133Z svn:log: Delete one file svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-12T14:04:07.258542Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2016-04-12T14:04:09.106481Z svn:log: Copy one file svn:txn-client-compat-version: 1.8.15 Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-12T14:04:09.173873Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/find.py000644 000765 000024 00000001130 11615325744 015645 0ustar00barrystaff000000 000000 # # find.py # # It turns out that Mac OS X and linux sort do not use the same # ordering. Python allows for a portable and reliable. # import os import sys all_files = [] def walk( dirname, all_files ): for filename in os.listdir( dirname ): if filename not in ['.svn']: filename = os.path.join( dirname, filename ) if os.path.isdir( filename ): walk( filename, all_files ) else: all_files.append( filename ) walk( sys.argv[1], all_files ) all_files.sort() for filename in all_files: print( filename ) pysvn-1.9.22/Tests/test-03.win32.known_good-py2-svn1.14.log000644 000765 000024 00000002461 13660472625 023214 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python23\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests >setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests >mkdir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests >cd testroot-03 L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >c:\python23\python.exe ..\test_callbacks.py Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-04.unix.known_good-py3-svn1.10.log000644 000765 000024 00000042524 13260120165 023220 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk commit_finalizing . Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test commit_finalizing . Info: Install hooks Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 commit_finalizing . Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:44.939971Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:45.754027Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 4 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:47.299575Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:48.047189Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt commit_finalizing . Revision 5 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:49.309730Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:50.065846Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt commit_finalizing . Revision 6 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.261317Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:51.933847Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt commit_finalizing . Revision 7 Info: pre_test_1.output start ------------------------------------ /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.179349Z svn:log: Copy one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x86_64-apple-darwin15.4.0) ra_local Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 7 6-6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-19T15:15:54.868530Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path='/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/thread_tests.py000644 000765 000024 00000002131 10016000572 017377 0ustar00barrystaff000000 000000 import sys import os import threading import pysvn import time def main( args ): num_threads = int(args[0]) repo = args[1] all_threads = [] for index in range(num_threads): t = CheckOutThread( index, repo ) all_threads.append( t ) t.start() some_alive = True while some_alive: some_alive = False time.sleep( 1 ) for t in all_threads: if t.isAlive(): some_alive = True print 'Done' class CheckOutThread(threading.Thread): def __init__( self, index, repo ): threading.Thread.__init__( self ) self.co_dir = os.path.join( 'testroot', 'wc_%d' % index ) self.co_repo = repo def run( self ): print 'Checkout',self.co_repo,self.co_dir client = pysvn.Client() client.callback_notify = self.callback_notify client.callback_cancel = self.callback_cancel x = client.checkout( self.co_repo, self.co_dir ) print 'Checkout to',self.co_dir,'Done' def callback_cancel( self ): print self.co_dir, 'Cancel check' return False def callback_notify( self, arg_dict ): print self.co_dir, arg_dict['action'], arg_dict['path'] if __name__ == '__main__': main( sys.argv[1:] ) pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.9.log000644 000765 000024 00000202276 12710133341 023145 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test commit_finalizing . Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos -v -R 2 barry 0 27-Apr-2016 13:49:29 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk 2 barry 0 27-Apr-2016 13:49:29 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/find.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/folder3 commit_finalizing . Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file6.txt commit_finalizing . Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1.txt commit_finalizing . Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T12:49:31.525642Z | test add file 1 2| r6 | barry | 2016-04-27T12:49:37.922009Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2016-04-27T12:49:31.525642Z | test add file 6 2| r4 | barry | 2016-04-27T12:49:32.877234Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags -m test-01 add tags commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags 8 barry 0 27-Apr-2016 13:49:43 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_finalizing . Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:49:37 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:49:37 Text Last Updated: 27-Apr-2016 13:49:39 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 27-Apr-2016 13:49:46 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 27-Apr-2016 13:49:37 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 27-Apr-2016 13:49:34 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 13:49:32 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 13:49:31 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 13:49:29 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 13:49:28 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 27-Apr-2016 13:49:37 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 27-Apr-2016 13:49:46 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 13:49:31 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 barry 23 27-Apr-2016 13:49:37 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 27-Apr-2016 13:49:46 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 27-Apr-2016 13:49:31 /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt commit_finalizing . Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt commit_finalizing . Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt commit_finalizing . Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2016-04-27T12:50:01.899163Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 13:49:29 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 13:49:29 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:49:37 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:49:37 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 13:49:37 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 2384123f-7a34-487e-8fe4-21c6e5dd03bc Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 27-Apr-2016 13:49:43 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt commit_finalizing . Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt =================================================================== Index: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import1.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/tmp/import 2.txt commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 27-Apr-2016 13:50:21 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 27-Apr-2016 13:50:19 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 13:50:18 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 13:50:17 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 13:50:16 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 13:50:15 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.12.log000644 000765 000024 00000007125 13461042336 023210 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.7.log000644 000765 000024 00000002602 11646632567 023141 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.8.log000644 000765 000024 00000007053 12710210640 023124 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.6.log000644 000765 000024 00000031772 12273446035 023140 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T13:39:59.522205Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T13:39:59.647003Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A b:/wc/a U b:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A b:/wc/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A b:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T13:40:00.052595Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T13:40:00.224192Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added b:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T13:40:00.504986Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T13:40:00.676583Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D b:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2014-02-02T13:40:00.941778Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2014-02-02T13:40:01.035376Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.12.log000644 000765 000024 00000013722 13461042336 023231 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.6.log000644 000765 000024 00000010513 11331322163 023137 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 01-Mar-2009 14:58:54 Text Last Updated: 01-Mar-2009 14:58:54 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 01-Mar-2009 14:58:54 Text Last Updated: 01-Mar-2009 14:58:54 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 8c776b55-675e-4f63-91a1-353407e7f4a1 Last changed author: barry Last Changed Date: 01-Mar-2009 14:58:54 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.8.log000644 000765 000024 00000013361 12164247515 023161 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Revision 6 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.12.log000644 000765 000024 00000043676 13461042336 023241 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:39 Lock Token: opaquelocktoken:0d6d7e92-8e7a-4815-9b65-60a1cfe3e91a Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:40 Lock Token: opaquelocktoken:f0d7ec3a-8b8d-4586-8c03-2f72df423017 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:22:38 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:22:40 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:40 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.10.log000644 000765 000024 00000010572 13260120165 023213 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.13.log000644 000765 000024 00000007721 13566476551 023235 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T10:51:53.374564Z | test add file 1 2| r3 | barry | 2018-04-02T10:51:53.906843Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.14.log000644 000765 000024 00000033642 13660472625 023222 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.5.log000644 000765 000024 00000064570 11264414514 023132 0ustar00barrystaff000000 000000 WorkDir: C:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python26\python.exe Username: barry Info: PYSVN CMD c:\python26\python.exe C:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 11-Oct-2009 18:15:41 file:///b:/repos/trunk 2 barry 0 11-Oct-2009 18:15:41 file:///b:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\prop-base b:\wc1\.svn\props b:\wc1\.svn\text-base b:\wc1\.svn\tmp b:\wc1\.svn\tmp\prop-base b:\wc1\.svn\tmp\props b:\wc1\.svn\tmp\text-base b:\wc1\test\.svn\entries b:\wc1\test\.svn\format b:\wc1\test\.svn\prop-base b:\wc1\test\.svn\props b:\wc1\test\.svn\text-base b:\wc1\test\.svn\tmp b:\wc1\test\.svn\tmp\prop-base b:\wc1\test\.svn\tmp\props b:\wc1\test\.svn\tmp\text-base Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD add file3.txt A file3.txt Info: PYSVN CMD add file4.txt A file4.txt Info: PYSVN CMD add --force file5.txt A file5.txt Info: PYSVN CMD add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A folder3 Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt A test/folder1 A test/folder1/file7.txt A test/folder1/folder2 A test/folder1/folder2/file8.txt A test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt A b:/wc2/test/file4.txt A b:/wc2/test/file5.txt A b:/wc2/test/folder1 A b:/wc2/test/folder1/file7.txt A b:/wc2/test/folder1/folder2 A b:/wc2/test/folder1/folder2/file8.txt A b:/wc2/test/folder3 U b:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U b:/wc2 U b:/wc2/test U b:/wc2/test/file1.txt Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2009-10-11T17:15:47.458500Z | test add file 1 1| r4 | barry | 2009-10-11T17:15:49.692875Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 11-Oct-2009 18:15:54 file:///b:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A b:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: b:/wc2/test/file1b.txt =================================================================== --- b:/wc2/test/file1b.txt (revision 7) +++ b:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - import Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///b:/repos/trunk/test Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 18:15:49 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 18:15:49 Text Last Updated: 11-Oct-2009 18:15:51 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 11-Oct-2009 18:15:57 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 11-Oct-2009 18:15:49 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 11-Oct-2009 18:15:47 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 11-Oct-2009 18:15:41 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 11-Oct-2009 18:15:41 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///b:/repos/trunk/test/file1.txt file:///b:/repos/trunk/test/file1b.txt file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file3.txt file:///b:/repos/trunk/test/file4.txt file:///b:/repos/trunk/test/file5.txt file:///b:/repos/trunk/test/folder1 file:///b:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 11-Oct-2009 18:15:49 file:///b:/repos/trunk/test/file1.txt 7 barry 23 11-Oct-2009 18:15:57 file:///b:/repos/trunk/test/file1b.txt 3 barry 17 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/file2.txt 3 barry 17 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/file3.txt 3 barry 17 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/file4.txt 3 barry 17 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/file5.txt 3 barry 0 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/folder1 3 barry 0 11-Oct-2009 18:15:47 file:///b:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test b:/wc2/test/file1.txt b:/wc2/test/file1b.txt b:/wc2/test/file2.txt b:/wc2/test/file3.txt b:/wc2/test/file4.txt b:/wc2/test/file5.txt b:/wc2/test/folder1 b:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 11-Oct-2009 18:15:49 b:/wc2/test/file1.txt 7 barry 23 11-Oct-2009 18:15:57 b:/wc2/test/file1b.txt 3 barry 17 11-Oct-2009 18:15:47 b:/wc2/test/file2.txt 3 barry 17 11-Oct-2009 18:15:47 b:/wc2/test/file3.txt 3 barry 17 11-Oct-2009 18:15:47 b:/wc2/test/file4.txt 3 barry 17 11-Oct-2009 18:15:47 b:/wc2/test/file5.txt 3 barry 0 11-Oct-2009 18:15:47 b:/wc2/test/folder1 3 barry 0 11-Oct-2009 18:15:47 b:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A b:/wc2/test/file3b.txt D b:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry b:\wc2 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt 4 3 barry b:\wc2\test\file2.txt 9 9 barry b:\wc2\test\file3b.txt 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D file5.txt Info: PYSVN CMD status M file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: u'b:\\wc2\\test\\.svn\\text-base\\file4.txt.svn-base' is_binary: False kind: merged_file: u'b:\\wc2\\test\\.svn\\tmp\\tempfile.3.tmp' mime_type: None my_file: u'b:\\wc2\\test\\.svn\\tmp\\tempfile.2.tmp' node_kind: path: 'b:/wc2/test/file4.txt' property_name: None reason: their_file: u'b:\\wc2\\test\\.svn\\tmp\\text-base\\file4.txt.svn-base' A b:/wc2/test/file2b.txt D b:/wc2/test/file2.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R b:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2009-10-11T17:16:21.646000Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/repos/trunk Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 18:15:41 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/root/repos/trunk Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-Oct-2009 18:15:41 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/repos/trunk Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 18:15:49 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 18:15:49 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-Oct-2009 18:15:49 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt D b:/wc2/test/file1b.txt D b:/wc2/test/file2b.txt D b:/wc2/test/file3b.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/tags/version1 Repository UUID: eb499e03-42bf-7843-84eb-c566f1c06fca Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-Oct-2009 18:15:54 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A b:/wc3/test A b:/wc3/test/file1.txt A b:/wc3/test/file1b.txt A b:/wc3/test/file2b.txt A b:/wc3/test/file3b.txt A b:/wc3/test/file4.txt A b:/wc3/test/file5.txt A b:/wc3/test/folder1 A b:/wc3/test/folder1/file7.txt A b:/wc3/test/folder1/folder2 A b:/wc3/test/folder1/folder2/file8.txt A b:/wc3/test/folder3 U b:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A test/file-merge-1.txt A test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A b:/wc3/test-branch A b:/wc3/test-branch/file-merge-1.txt A b:/wc3/test-branch/file-merge-2.txt A b:/wc3/test-branch/file1.txt A b:/wc3/test-branch/file1b.txt A b:/wc3/test-branch/file2b.txt A b:/wc3/test-branch/file3b.txt A b:/wc3/test-branch/file4.txt A b:/wc3/test-branch/file5.txt A b:/wc3/test-branch/folder1 A b:/wc3/test-branch/folder1/file7.txt A b:/wc3/test-branch/folder1/folder2 A b:/wc3/test-branch/folder1/folder2/file8.txt A b:/wc3/test-branch/folder3 U b:/wc3 U b:/wc3/test Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt D b:/wc3/test-branch/file-merge-1.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt merge_begin b:/wc3/test-branch merge_begin b:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch U b:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M b:\wc3\test-branch D b:\wc3\test-branch\file-merge-1.txt MM b:\wc3\test-branch\file-merge-2.txt A + b:\wc3\test-branch\file-merge-3.txt M b:\wc3\test-branch\file1.txt M b:\wc3\test-branch\file1b.txt M b:\wc3\test-branch\file2b.txt M b:\wc3\test-branch\file3b.txt M b:\wc3\test-branch\file4.txt M b:\wc3\test-branch\file5.txt Info: PYSVN CMD diff b:\wc3\test-branch Property changes on: b:\wc3\test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Property changes on: b:\wc3\test-branch\file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r15 Property changes on: b:\wc3\test-branch\file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r15 Property changes on: b:\wc3\test-branch\file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r15 Property changes on: b:\wc3\test-branch\file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r15 Property changes on: b:\wc3\test-branch\file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r15 Index: b:/wc3/test-branch/file-merge-1.txt =================================================================== --- b:/wc3/test-branch/file-merge-1.txt (revision 14) +++ b:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: b:/wc3/test-branch/file-merge-2.txt =================================================================== --- b:/wc3/test-branch/file-merge-2.txt (revision 14) +++ b:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: b:\wc3\test-branch\file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Property changes on: b:\wc3\test-branch\file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Property changes on: b:\wc3\test-branch\file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r15 Info: CMD c:\python26\python.exe C:\wc\pysvn\trunk\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - end pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.4.log000644 000765 000024 00000050253 11253135715 023123 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 23-Sep-2006 16:04:57 file:///b:/repos/trunk 2 barry 0 23-Sep-2006 16:04:57 file:///b:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\prop-base b:\wc1\.svn\props b:\wc1\.svn\text-base b:\wc1\.svn\tmp b:\wc1\.svn\tmp\prop-base b:\wc1\.svn\tmp\props b:\wc1\.svn\tmp\text-base b:\wc1\test\.svn\entries b:\wc1\test\.svn\format b:\wc1\test\.svn\prop-base b:\wc1\test\.svn\props b:\wc1\test\.svn\text-base b:\wc1\test\.svn\tmp b:\wc1\test\.svn\tmp\prop-base b:\wc1\test\.svn\tmp\props b:\wc1\test\.svn\tmp\text-base Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD add file3.txt A file3.txt Info: PYSVN CMD add file4.txt A file4.txt Info: PYSVN CMD add --force file5.txt A file5.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt A test/file3.txt A test/file4.txt A test/file5.txt Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt A b:/wc2/test/file4.txt A b:/wc2/test/file5.txt U b:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U b:/wc2 U b:/wc2/test U b:/wc2/test/file1.txt Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2006-09-23T15:05:00.862883Z | test add file 1 1| r4 | barry | 2006-09-23T15:05:02.665475Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 23-Sep-2006 16:05:05 file:///b:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A b:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: b:/wc2/test/file1b.txt =================================================================== --- b:/wc2/test/file1b.txt (revision 7) +++ b:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt Info: Test - import Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///b:/repos/trunk/test Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 23-Sep-2006 16:05:02 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 23-Sep-2006 16:05:02 Text Last Updated: 23-Sep-2006 16:05:03 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 23-Sep-2006 16:05:06 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 23-Sep-2006 16:05:02 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 23-Sep-2006 16:05:00 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 23-Sep-2006 16:04:57 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 23-Sep-2006 16:04:57 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///b:/repos/trunk/test/file1.txt file:///b:/repos/trunk/test/file1b.txt file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file3.txt file:///b:/repos/trunk/test/file4.txt file:///b:/repos/trunk/test/file5.txt Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 23-Sep-2006 16:05:02 file:///b:/repos/trunk/test/file1.txt 7 barry 23 23-Sep-2006 16:05:06 file:///b:/repos/trunk/test/file1b.txt 3 barry 17 23-Sep-2006 16:05:00 file:///b:/repos/trunk/test/file2.txt 3 barry 17 23-Sep-2006 16:05:00 file:///b:/repos/trunk/test/file3.txt 3 barry 17 23-Sep-2006 16:05:00 file:///b:/repos/trunk/test/file4.txt 3 barry 17 23-Sep-2006 16:05:00 file:///b:/repos/trunk/test/file5.txt Info: PYSVN CMD ls b:\wc2\test b:/wc2/test/file1.txt b:/wc2/test/file1b.txt b:/wc2/test/file2.txt b:/wc2/test/file3.txt b:/wc2/test/file4.txt b:/wc2/test/file5.txt Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 23-Sep-2006 16:05:02 b:/wc2/test/file1.txt 7 barry 23 23-Sep-2006 16:05:06 b:/wc2/test/file1b.txt 3 barry 17 23-Sep-2006 16:05:00 b:/wc2/test/file2.txt 3 barry 17 23-Sep-2006 16:05:00 b:/wc2/test/file3.txt 3 barry 17 23-Sep-2006 16:05:00 b:/wc2/test/file4.txt 3 barry 17 23-Sep-2006 16:05:00 b:/wc2/test/file5.txt Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A b:/wc2/test/file3b.txt D b:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A wc2/test/file3b.txt D wc2/test/file3.txt M wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry b:\wc2 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt 4 3 barry b:\wc2\test\file2.txt 9 9 barry b:\wc2\test\file3b.txt 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt Info: PYSVN CMD update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D file5.txt Info: PYSVN CMD status M file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test A b:/wc2/test/file2b.txt D b:/wc2/test/file2.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R b:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2006-09-23T15:05:21.973238Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/repos/trunk Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 23-Sep-2006 16:04:57 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 23-Sep-2006 16:04:57 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/repos/trunk Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 23-Sep-2006 16:05:02 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 23-Sep-2006 16:05:02 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/trunk Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 23-Sep-2006 16:05:02 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt D b:/wc2/test/file1b.txt D b:/wc2/test/file2b.txt D b:/wc2/test/file3b.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///b:/root/repos/tags/version1 Repository UUID: 83564c9e-9371-b04b-982f-e947ec829d1d Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 23-Sep-2006 16:05:05 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A b:/wc3/test A b:/wc3/test/file1.txt A b:/wc3/test/file1b.txt A b:/wc3/test/file2b.txt A b:/wc3/test/file3b.txt A b:/wc3/test/file4.txt A b:/wc3/test/file5.txt U b:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A test/file-merge-1.txt A test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A b:/wc3/test-branch A b:/wc3/test-branch/file-merge-1.txt A b:/wc3/test-branch/file-merge-2.txt A b:/wc3/test-branch/file1.txt A b:/wc3/test-branch/file1b.txt A b:/wc3/test-branch/file2b.txt A b:/wc3/test-branch/file3b.txt A b:/wc3/test-branch/file4.txt A b:/wc3/test-branch/file5.txt U b:/wc3 U b:/wc3/test Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A test/file-merge-3.txt D test/file-merge-1.txt M test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt D b:/wc3/test-branch/file-merge-1.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt skip b:/wc3/test-branch/file-merge-1.txt Info: PYSVN CMD status b:\wc3\test-branch D b:\wc3\test-branch\file-merge-1.txt M b:\wc3\test-branch\file-merge-2.txt A + b:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: b:/wc3/test-branch/file-merge-1.txt =================================================================== --- b:/wc3/test-branch/file-merge-1.txt (revision 14) +++ b:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: b:/wc3/test-branch/file-merge-2.txt =================================================================== --- b:/wc3/test-branch/file-merge-2.txt (revision 14) +++ b:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Info: CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - end pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.12.log000644 000765 000024 00000007721 13461042336 023214 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T10:51:53.374564Z | test add file 1 2| r3 | barry | 2018-04-02T10:51:53.906843Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.11.log000644 000765 000024 00000010572 13404261102 023211 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.5.log000644 000765 000024 00000004652 11331322163 023124 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python24\python.exe Username: barry Info: PYSVN CMD c:\python24\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Repository: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 30-Dec-2005 20:31:09 Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 30-Dec-2005 20:31:09 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info of URL Info: PYSVN CMD info --revision HEAD file:///b:/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///b:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///b:/repos Repository UUID: b08a34a7-24ac-2447-890d-38d2104d314d Last changed author: barry Last Changed Date: 30-Dec-2005 20:31:09 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.13.log000644 000765 000024 00000043676 13566476551 023262 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:39 Lock Token: opaquelocktoken:0d6d7e92-8e7a-4815-9b65-60a1cfe3e91a Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:40 Lock Token: opaquelocktoken:f0d7ec3a-8b8d-4586-8c03-2f72df423017 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:22:38 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:22:40 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:40 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-07.unix.known_good-py2-svn1.9.log000644 000765 000024 00000013720 12564665666 023200 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.7.log000644 000765 000024 00000011022 11646632567 023161 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/3.2/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: b3a5645c-5bc2-4a9e-aad8-a4f92d306b44 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 16-Oct-2011 20:47:26 Text Last Updated: 16-Oct-2011 20:47:26 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: b3a5645c-5bc2-4a9e-aad8-a4f92d306b44 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 16-Oct-2011 20:47:26 Text Last Updated: 16-Oct-2011 20:47:26 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: b3a5645c-5bc2-4a9e-aad8-a4f92d306b44 Last changed author: barry Last Changed Date: 16-Oct-2011 20:47:26 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-10.sh000755 000765 000024 00000003376 13262407737 016130 0ustar00barrystaff000000 000000 #!/bin/bash # # test-10.sh - 1.9 commands # test vacuum # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-10 cmd cd testroot-10 TESTROOT=${WORKDIR}/Tests/testroot-10 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-10 add trunk" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1 echo Info: Setup - add files and folders cmd_pysvn mkdir folder1 cmd_pysvn propset svn:ignore "*~" folder1 echo test add file 1 >folder1/file-a.txt cmd_pysvn add folder1/file-a.txt cmd_pysvn checkin -m "commit added files" echo test add file 1 >folder1/file-a.txt~ echo test add file 1 >folder1/file-b.txt echo Info: vacuum no removes cmd_pysvn status2 --verbose --no-ignore . cmd_pysvn vacuum echo Info: vacuum remove ignored cmd_pysvn status2 --verbose --no-ignore . cmd_pysvn vacuum --remove-ignored-items echo Info: vacuum remove versioned cmd_pysvn status2 --verbose --no-ignore . cmd_pysvn vacuum --remove-unversioned-items echo Info: check final state cmd_pysvn status2 --verbose --no-ignore . true pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.13.log000644 000765 000024 00000013722 13566476551 023252 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.7.log000644 000765 000024 00000032020 12164357546 023133 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry C:\wc\svn\pysvn\Extension\Tests > setlocal C:\wc\svn\pysvn\Extension\Tests > set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client C:\wc\svn\pysvn\Extension\Tests > set PYSVN=c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\wc\svn\pysvn\Extension\Tests > mkdir testroot-04 C:\wc\svn\pysvn\Extension\Tests > subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-04 C:\wc\svn\pysvn\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\wc\svn\pysvn\Extension\Source;C:\wc\svn\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T19:43:13.731229Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T19:43:13.824780Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T19:43:14.245757Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T19:43:14.370491Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T19:43:14.635549Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T19:43:14.744691Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T19:43:15.025342Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T19:43:15.118892Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-01.cmd000644 000765 000024 00000023720 14046474103 016241 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-01.cmd @rem test the main commands that are in all versions @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-01 call :cmd_shell subst b: %CD%\testroot-01 call :cmd_shell cd /d b:\ call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Test - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-01 add trunk" call :cmd_pysvn mkdir file:///b:/repos/trunk/test -m "test-01 add test" echo Info: Test - ls call :cmd_pysvn ls file:///b:/repos -v -R echo Info: Test - checkout call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell dir b:\wc1 /s /b /a-h call :cmd_shell cd /d b:\wc1\test echo Info: Test - add call :cmd_createfile file1.txt test add file 1 call :cmd_createfile file2.txt test add file 2 call :cmd_createfile file3.txt test add file 3 call :cmd_createfile file4.txt test add file 4 call :cmd_createfile file5.txt test add file 5 call :cmd_shell mkdir folder1 call :cmd_createfile folder1\file7.txt test add file 7 call :cmd_shell mkdir folder1\folder2 call :cmd_createfile folder1\folder2\file8.txt test add file 8 call :cmd_shell mkdir folder3 call :cmd_createfile folder3\file9.txt test add file 9 call :cmd_shell mkdir folder3\folder4 call :cmd_createfile folder3\folder4\file10.txt test add file 10 call :cmd_pysvn add file1.txt call :cmd_pysvn add file2.txt call :cmd_pysvn add file3.txt call :cmd_pysvn add file4.txt call :cmd_pysvn add --force file5.txt call :cmd_pysvn add folder1 call :cmd_pysvn add --non-recursive folder3 call :cmd_pysvn checkin -m "commit added files" echo Info: Test - update - get a new wc that will update call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc2 echo Info: Test - - checkin a mod from wc1 call :cmd_appendfile b:\wc1\test\file1.txt line 2 call :cmd_pysvn checkin -m "commit modified file" call :cmd_pysvn checkin -m "commit modified file" echo Info: Test - update call :cmd_pysvn update b:\wc2 echo Info: Test - the rest in lexical order echo Info: Test - annotate call :cmd_pysvn annotate b:\wc2\test\file1.txt echo Info: Test - cat call :cmd_pysvn cat -r head file:///b:/repos/trunk/test/file1.txt echo Info: Test - cleanup echo Info: Test - copy call :cmd_pysvn mkdir file:///b:/repos/tags -m "test-01 add tags" call :cmd_createfile msg.tmp tag the trunk call :cmd_pysvn copy file:///b:/repos/trunk file:///b:/repos/tags/version1 %FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.9.log000644 000765 000024 00000007125 12710213263 023131 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.13.log000644 000765 000024 00000007125 13566476551 023231 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.6.log000644 000765 000024 00000002602 11255110531 023112 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.6.5\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.14.log000644 000765 000024 00000024101 14046474103 023202 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d52a8600-1afa-5548-868b-b308103e8346 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:19 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 31-Aug-2020 15:02:18 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 31-Aug-2020 15:02:19 B:/wc1/test 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file1.txt 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d52a8600-1afa-5548-868b-b308103e8346 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:19 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 31-Aug-2020 15:02:20 Lock Token: opaquelocktoken:659984cb-1ca1-3b43-8b95-1ac5d8427c99 Lock Comment: Schedule: normal Text Last Updated: 31-Aug-2020 15:02:18 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2020-08-31 15:02:20 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 31-Aug-2020 15:02:19 B:/wc1/test 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2020-08-31 15:02:20 3 barry 17 31-Aug-2020 15:02:19 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: d52a8600-1afa-5548-868b-b308103e8346 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:19 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 31-Aug-2020 15:02:21 Lock Token: opaquelocktoken:21fcd9d9-1c61-4e4d-8af4-e7545e53ded6 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 31-Aug-2020 15:02:19 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 31-Aug-2020 15:02:19 B:/wc2 3 barry - 31-Aug-2020 15:02:19 B:/wc2/test 3 barry 17 31-Aug-2020 15:02:19 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2020-08-31 15:02:21 3 barry 17 31-Aug-2020 15:02:19 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 31-Aug-2020 15:02:21 B:/wc2 4 barry - 31-Aug-2020 15:02:21 B:/wc2/test 4 barry 35 31-Aug-2020 15:02:21 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2020-08-31 15:02:21 4 barry 35 31-Aug-2020 15:02:21 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 31-Aug-2020 15:02:21 B:/wc2 4 barry - 31-Aug-2020 15:02:21 B:/wc2/test 4 barry 35 31-Aug-2020 15:02:21 B:/wc2/test/file1.txt 4 barry 35 31-Aug-2020 15:02:21 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 31-Aug-2020 15:02:21 B:/wc1 4 barry - 31-Aug-2020 15:02:21 B:/wc1/test 4 barry 35 31-Aug-2020 15:02:21 B:/wc1/test/file1.txt 4 barry 35 31-Aug-2020 15:02:21 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: d52a8600-1afa-5548-868b-b308103e8346 Last changed author: barry Last Changed Date: 31-Aug-2020 15:02:21 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 31-Aug-2020 15:02:21 B:/wc1 4 barry - 31-Aug-2020 15:02:21 B:/wc1/test 4 barry 35 31-Aug-2020 15:02:21 B:/wc1/test/file1.txt 4 barry 35 31-Aug-2020 15:02:21 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-01.unix.known_good-py2-svn1.8.log000644 000765 000024 00000173021 12710154207 023143 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-01 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos Info: Testing - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk -m test-01 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test -m test-01 add test Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos -v -R 2 barry 0 27-Apr-2016 16:06:02 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk 2 barry 0 27-Apr-2016 16:06:02 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Info: Testing - checkout Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/find.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - add Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --force file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: add --non-recursive folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/folder3 Revision 3 Info: Setup to test access to deleted files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit mod file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: rm file6.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit delete file D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file6.txt Revision 5 Info: Testing - update - get a new wc that will update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Checked out revision 5 Info: Testing - - checkin a mod from wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin -m commit modified file M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1.txt Revision 6 Info: Testing - update Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Updated to revision 6 Info: Testing - the rest in lexical order Info: Testing - annotate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2016-04-27T15:06:03.761263Z | test add file 1 2| r6 | barry | 2016-04-27T15:06:07.095446Z | line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: annotate -r 3:4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt A /trunk/test/file6.txt A /trunk/test/file6.txt 1| r3 | barry | 2016-04-27T15:06:03.761263Z | test add file 6 2| r4 | barry | 2016-04-27T15:06:04.092852Z | test mod file 6 Info: Testing - cat Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r head file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt test add file 1 line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cat -r 4 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file6.txt test add file 6 test mod file 6 Info: Testing - cleanup Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: cleanup /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: pysvn command: cleanup . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: Testing - copy Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags -m test-01 add tags Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags 8 barry 0 27-Apr-2016 16:06:11 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/tags/version1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: copy /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m copy test commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt Revision 9 Info: Testing - diff Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (revision 9) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Testing - export Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CR file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol LF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: export --native-eol CRLF file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder3 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.native/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.cr/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.lf/folder1/folder2/file8.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/file7.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/export1.crlf/folder1/folder2/file8.txt Info: Testing - info Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:06:07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 6 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:06:07 Text Last Updated: 27-Apr-2016 16:06:08 Checksum: d17a5219a23a23ce7f363b75e09ec043 Info: Testing - log Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: log /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 ------------------------------------------------------------ rev 9: barry | 27-Apr-2016 16:06:12 | 1 lines copy test ------------------------------------------------------------ rev 6: barry | 27-Apr-2016 16:06:07 | 1 lines commit modified file ------------------------------------------------------------ rev 5: barry | 27-Apr-2016 16:06:05 | 1 lines commit delete file ------------------------------------------------------------ rev 4: barry | 27-Apr-2016 16:06:04 | 1 lines commit mod file ------------------------------------------------------------ rev 3: barry | 27-Apr-2016 16:06:03 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 27-Apr-2016 16:06:02 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 27-Apr-2016 16:06:02 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Testing - ls Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test 6 barry 23 27-Apr-2016 16:06:07 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1.txt 9 barry 23 27-Apr-2016 16:06:12 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file1b.txt 3 barry 16 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt 3 barry 16 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file3.txt 3 barry 16 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file4.txt 3 barry 16 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file5.txt 3 barry 0 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder1 3 barry 0 27-Apr-2016 16:06:03 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: ls -v /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 barry 23 27-Apr-2016 16:06:07 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 9 barry 23 27-Apr-2016 16:06:12 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 3 barry 16 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 3 barry 16 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt 3 barry 16 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 3 barry 16 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 3 barry 0 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 3 barry 0 27-Apr-2016 16:06:03 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: Testing - merge - done below Info: Testing - mkdir - done above Info: Testing - move Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk/test/file2b.txt Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: move /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m move wc test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt commit_copied /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt Revision 11 Info: Testing - status Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 -m change wc1 for status -u to detect M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: update A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file2.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file3.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Updated to revision 12 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: status --show-updates --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 M 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test 6 6 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt 11 11 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt M 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/file7.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder1/folder2/file8.txt 6 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/folder3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 -m prop change Nothing to commit Info: Testing - propdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset test:prop1 del_me file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propdel test:prop1 file4.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Info: Testing - propget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget svn:eol-style file4.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propget unknown file4.txt Info: Testing - proplist - see above Info: Testing - propset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: propset svn:eol-style native file4.txt property_modified /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Testing - remove Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: remove file5.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status M file4.txt D file5.txt Info: Testing - resolved Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test -m make a conflict part 1 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt Revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test callback_conflict_resolver action: base_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r6 is_binary: False kind: merged_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt mime_type: None my_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine node_kind: operation: path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt property_name: None reason: repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} repos_url: {'node_kind': , 'path_in_repos': u'trunk/test/file4.txt', 'peg_rev': , 'repos_url': u'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos'} their_file: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.r13 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Updated to revision 13 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status CM file4.txt ? file4.txt.mine ? file4.txt.r13 ? file4.txt.r6 D file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt.mine /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: resolved /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_done /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt conflict_resolver_starting /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt -m resolve a confict part 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Revision 14 Info: Testing - revert Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revert file5.txt R /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file5.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: status Info: Testing - revproplist Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revproplist file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:author: barry svn:date: 2016-04-27T15:06:20.253150Z svn:log: resolve a confict part 2 Info: Testing - revpropget Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 svn:log: resolve a confict part 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropget no_such_prop file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Revision: 14 no_such_prop: None Info: Testing - revpropset Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropset svn:log Hello world file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - revpropdel Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: revpropdel svn:log file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Testing - status - see above Info: Testing - relocate Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mkdir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: mv /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 16:06:02 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 27-Apr-2016 16:06:02 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:06:07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: relocate file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/repos/trunk file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:06:07 Info: Testing - switch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 6 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 27-Apr-2016 16:06:07 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: switch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file1b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file2b.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file3b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test/file4.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2 Name: . Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/tags/version1 Repository UUID: 8fbccaa8-e0a7-46ad-8ea2-ce8a8c2cd8e6 Revision: 14 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 8 Last Changed Date: 27-Apr-2016 16:06:11 Info: Testing - update - see above Info: Testing - merge Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Checked out revision 14 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc2/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m add test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 15 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: copy file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test-branch Log message --- ------- Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/folder3 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3 Updated to revision 16 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: add file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: rm file-merge-1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: commit -m change test merge files . A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test/file-merge-2.txt Revision 17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --dry-run --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_elide_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_record_info_begin /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: merge --revision 16:17 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch merge_completed /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: status /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt A + /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-3.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: diff /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch =================================================================== --- /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (revision 16) +++ /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch (working copy) Property changes on: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r17 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_01_set_get_tests.py /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Testing - import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import -m test-01 add import Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message no spaces /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, none in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import-file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, space in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: import --message space in file, %20 in url /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/root/repos/trunk/test/import/import%20file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/tmp/import 2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file1b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file2b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file3b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file4.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/file5.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/file7.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder1/folder2/file8.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test-branch/folder3 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file-merge-3.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file1B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2A.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import file2B.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/import/import-file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1/test/file4.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 Updated to revision 24 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc3/test Info: pysvn command: log --limit 6 --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-01/wc1 ------------------------------------------------------------ rev 24: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import file2B.txt space in file, %20 in url ------------------------------------------------------------ rev 23: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 22: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 21: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import file1B.txt %20 in url ------------------------------------------------------------ rev 20: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 19: barry | 27-Apr-2016 16:06:28 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.11.log000644 000765 000024 00000007125 13404261102 023176 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-03.cmd000644 000765 000024 00000000454 12704671446 016252 0ustar00barrystaff000000 000000 @prompt $P$S$G @rem @rem test-03.cmd @rem test callbacks @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% setlocal mkdir testroot-03 subst b: %CD%\testroot-03 mkdir b:\configdir cd testroot-03 %PYTHON% ..\test_callbacks.py endlocal pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.14.log000644 000765 000024 00000074246 14046474103 023215 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 31-Aug-2020 15:00:39 file:///B:/repos/trunk 2 barry - 31-Aug-2020 15:00:39 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2020-08-31T14:00:42.003753Z | test add file 1 2| r4 | barry | 2020-08-31T14:00:42.628758Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 31-Aug-2020 15:00:43 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 31-Aug-2020 15:00:42 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 31-Aug-2020 15:00:42 Text Last Updated: 31-Aug-2020 15:00:42 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 31-Aug-2020 15:00:44 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 31-Aug-2020 15:00:42 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 31-Aug-2020 15:00:42 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 31-Aug-2020 15:00:39 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 31-Aug-2020 15:00:39 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/file1.txt 7 barry 23 31-Aug-2020 15:00:44 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/file2.txt 3 barry 17 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/file3.txt 3 barry 17 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/file4.txt 3 barry 17 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/file5.txt 3 barry - 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/folder1 3 barry - 31-Aug-2020 15:00:42 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 31-Aug-2020 15:00:42 B:/wc2/test/file1.txt 7 barry 23 31-Aug-2020 15:00:44 B:/wc2/test/file1b.txt 3 barry 17 31-Aug-2020 15:00:42 B:/wc2/test/file2.txt 3 barry 17 31-Aug-2020 15:00:42 B:/wc2/test/file3.txt 3 barry 17 31-Aug-2020 15:00:42 B:/wc2/test/file4.txt 3 barry 17 31-Aug-2020 15:00:42 B:/wc2/test/file5.txt 3 barry - 31-Aug-2020 15:00:42 B:/wc2/test/folder1 3 barry - 31-Aug-2020 15:00:42 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2020-08-31T14:00:51.754002Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 31-Aug-2020 15:00:39 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 31-Aug-2020 15:00:39 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 31-Aug-2020 15:00:42 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 31-Aug-2020 15:00:42 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 31-Aug-2020 15:00:42 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: cfee6dcd-b50b-5049-9fd4-de26294acff4 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 31-Aug-2020 15:00:43 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python38.Win64\python.exe -u C:\Users\barry\Projects\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 31-Aug-2020 15:00:59 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 31-Aug-2020 15:00:59 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 31-Aug-2020 15:00:58 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 31-Aug-2020 15:00:58 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 31-Aug-2020 15:00:58 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 31-Aug-2020 15:00:57 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.11.log000644 000765 000024 00000013722 13404261102 023217 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.5.log000644 000765 000024 00000017315 11253135715 023131 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python25\python.exe Username: barry L:\wc\pysvn\trunk\pysvn\Extension\Tests > setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYSVN=c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests > mkdir testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > cd /d b:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > rem echo echo svnlook info %1 -t %2 ^>b:\test_1.output >b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook info %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >>b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > rem Add one dir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 2-2 Info: pre commit test 1 Info: Transaction( b:\repos, 2-2) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:04.078898Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A b:/wc/a U b:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A b:/wc/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A wc/a/file1.txt A wc/file1.txt Revision 4 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 3-3 Info: pre commit test 1 Info: Transaction( b:\repos, 3-3) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:06.912889Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M wc/a/file1.txt M wc/file1.txt Revision 5 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 4-4 Info: pre commit test 1 Info: Transaction( b:\repos, 4-4) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:08.655342Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D wc/a/file1.txt Revision 6 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:\repos 5-5 Info: pre commit test 1 Info: Transaction( b:\repos, 5-5) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2008-10-12T11:04:10.698218Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-06.unix.known_good-py3-svn1.5.log000644 000765 000024 00000010103 11331322163 023131 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-06 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: mkdir tmp Info: PYSVN command /usr/bin/python2.3 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.03.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk -m test-06 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test -m test-06 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file1.txt A file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: add file2.txt A file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: checkin -m commit added files A test/file1.txt A test/file2.txt Revision 3 Info: Test - info of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of path Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info file1.txt Path: file1.txt Name: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Repository: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 10-Jan-2006 23:41:45 Text Last Updated: 10-Jan-2006 23:41:43 Checksum: e99afc2363b20ca1e52cd9ce4e8577eb Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt unused option --revision Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/wc1/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-06/repos Repository UUID: 421e36a8-090a-0410-b626-e41f79184237 Last changed author: barry Last Changed Date: 10-Jan-2006 23:41:45 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.7.log000644 000765 000024 00000004454 12052507157 023137 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 11e2c046-4fbd-0048-8b5c-e78976d7dfb5 Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 19-Nov-2012 19:52:56 Text Last Updated: 19-Nov-2012 19:52:56 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 11e2c046-4fbd-0048-8b5c-e78976d7dfb5 Last changed author: barry Last Changed Date: 19-Nov-2012 19:52:56 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 19-Nov-2012 19:52:56 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 11e2c046-4fbd-0048-8b5c-e78976d7dfb5 Last changed author: barry Last Changed Date: 19-Nov-2012 19:52:56 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.11.log000644 000765 000024 00000043676 13404261102 023227 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:39 Lock Token: opaquelocktoken:0d6d7e92-8e7a-4815-9b65-60a1cfe3e91a Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:40 Lock Token: opaquelocktoken:f0d7ec3a-8b8d-4586-8c03-2f72df423017 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:22:38 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:22:40 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:40 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.14.log000644 000765 000024 00000013566 13660472625 023252 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-04.sh000755 000765 000024 00000011377 13262407737 016133 0ustar00barrystaff000000 000000 #!/bin/bash # # test-04.sh # test Tranaction object # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: Command: $* "$@" } cmd mkdir testroot-04 cmd cd testroot-04 TESTROOT=${WORKDIR}/Tests/testroot-04 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir ${TESTROOT}/configdir" cmd svnadmin create ${TESTROOT}/repos echo Info: Testing - mkdir cmd ${PYSVN} mkdir file://${TESTROOT}/repos/trunk -m "test-04 add trunk" cmd ${PYSVN} mkdir file://${TESTROOT}/repos/trunk/test -m "test-04 add test" echo Info: Install hooks echo '#!/bin/bash' >${TESTROOT}/repos/hooks/pre-commit echo export PYTHONPATH=$PYTHONPATH >>${TESTROOT}/repos/hooks/pre-commit echo export LD_LIBRARY_PATH=$LD_LIBRARY_PATH >>${TESTROOT}/repos/hooks/pre-commit echo export PATH=$PATH >>${TESTROOT}/repos/hooks/pre-commit echo echo $PYTHON ${WORKDIR}/Tests/test_04_commit_hook_test_1.py pre-commit '"$@"' ">${TESTROOT}/pre_test_1.output" >>${TESTROOT}/repos/hooks/pre-commit echo $PYTHON ${WORKDIR}/Tests/test_04_commit_hook_test_1.py pre-commit '"$@"' ">>${TESTROOT}/pre_test_1.output" >>${TESTROOT}/repos/hooks/pre-commit chmod +x ${TESTROOT}/repos/hooks/pre-commit echo '#!/bin/bash' >${TESTROOT}/repos/hooks/post-commit echo export PYTHONPATH=$PYTHONPATH >>${TESTROOT}/repos/hooks/post-commit echo export LD_LIBRARY_PATH=$LD_LIBRARY_PATH >>${TESTROOT}/repos/hooks/post-commit echo export PATH=$PATH >>${TESTROOT}/repos/hooks/post-commit echo echo $PYTHON ${WORKDIR}/Tests/test_04_commit_hook_test_1.py post-commit '"$@"' is_revision ">${TESTROOT}/post_test_1.output" >>${TESTROOT}/repos/hooks/post-commit echo $PYTHON ${WORKDIR}/Tests/test_04_commit_hook_test_1.py post-commit '"$@"' is_revision ">>${TESTROOT}/post_test_1.output" >>${TESTROOT}/repos/hooks/post-commit chmod +x ${TESTROOT}/repos/hooks/post-commit cmd ${PYSVN} mkdir file://${TESTROOT}/repos/trunk/test/a -m "pre-commit test 1" echo Info: pre_test_1.output start ------------------------------------ cat ${TESTROOT}/pre_test_1.output echo Info: pre_test_1.output end -------------------------------------- echo Info: post_test_1.output start ----------------------------------- cat ${TESTROOT}/post_test_1.output echo Info: post_test_1.output end ------------------------------------- echo Info: Add two files cmd ${PYSVN} checkout file://${TESTROOT}/repos/trunk/test ${TESTROOT}/wc echo file1 ROOT > ${TESTROOT}/wc/file1.txt echo file1 A > ${TESTROOT}/wc/a/file1.txt cmd ${PYSVN} add ${TESTROOT}/wc/file1.txt cmd ${PYSVN} add ${TESTROOT}/wc/a/file1.txt cmd ${PYSVN} checkin -m "Add two files" ${TESTROOT}/wc echo Info: pre_test_1.output start ------------------------------------ cat ${TESTROOT}/pre_test_1.output echo Info: pre_test_1.output end -------------------------------------- echo Info: post_test_1.output start ----------------------------------- cat ${TESTROOT}/post_test_1.output echo Info: post_test_1.output end ------------------------------------- echo Info: Mod one file Mod one prop echo file1 ROOT ln 2 > ${TESTROOT}/wc/file1.txt cmd ${PYSVN} propset svn:eol-style native ${TESTROOT}/wc/a/file1.txt cmd ${PYSVN} checkin -m "Mod one file Mod one prop" ${TESTROOT}/wc echo Info: pre_test_1.output start ------------------------------------ cat ${TESTROOT}/pre_test_1.output echo Info: pre_test_1.output end -------------------------------------- echo Info: post_test_1.output start ----------------------------------- cat ${TESTROOT}/post_test_1.output echo Info: post_test_1.output end ------------------------------------- echo Info: Delete one file cmd ${PYSVN} rm ${TESTROOT}/wc/a/file1.txt cmd ${PYSVN} checkin -m "Delete one file" ${TESTROOT}/wc echo Info: pre_test_1.output start ------------------------------------ cat ${TESTROOT}/pre_test_1.output echo Info: pre_test_1.output end -------------------------------------- echo Info: post_test_1.output start ----------------------------------- cat ${TESTROOT}/post_test_1.output echo Info: post_test_1.output end ------------------------------------- echo Info: Copy one file cmd ${PYSVN} cp ${TESTROOT}/wc/file1.txt ${TESTROOT}/wc/file1copy.txt cmd ${PYSVN} checkin -m "Copy one file" ${TESTROOT}/wc echo Info: pre_test_1.output start ------------------------------------ cat ${TESTROOT}/pre_test_1.output echo Info: pre_test_1.output end -------------------------------------- echo Info: post_test_1.output start ----------------------------------- cat ${TESTROOT}/post_test_1.output echo Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.10.log000644 000765 000024 00000010067 14046541473 023215 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2021-05-11T17:23:35.110843Z | test add file 1 2| r3 | barry | 2021-05-11T17:23:35.651751Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.13.log000644 000765 000024 00000010572 13566476551 023244 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.6.log000644 000765 000024 00000065302 12052506061 023120 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 19-Nov-2012 19:40:28 file:///B:/repos/trunk 2 barry 0 19-Nov-2012 19:40:28 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\prop-base b:\wc1\.svn\props b:\wc1\.svn\text-base b:\wc1\.svn\tmp b:\wc1\.svn\tmp\prop-base b:\wc1\.svn\tmp\props b:\wc1\.svn\tmp\text-base b:\wc1\test\.svn\entries b:\wc1\test\.svn\prop-base b:\wc1\test\.svn\props b:\wc1\test\.svn\text-base b:\wc1\test\.svn\tmp b:\wc1\test\.svn\tmp\prop-base b:\wc1\test\.svn\tmp\props b:\wc1\test\.svn\tmp\text-base Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD add file3.txt A file3.txt Info: PYSVN CMD add file4.txt A file4.txt Info: PYSVN CMD add --force file5.txt A file5.txt Info: PYSVN CMD add folder1 A folder1 A folder1/file7.txt A folder1/folder2 A folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A folder3 Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt A b:/wc1/test/file3.txt A b:/wc1/test/file4.txt A b:/wc1/test/file5.txt A b:/wc1/test/folder1 A b:/wc1/test/folder1/file7.txt A b:/wc1/test/folder1/folder2 A b:/wc1/test/folder1/folder2/file8.txt A b:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A b:/wc2/test A b:/wc2/test/file1.txt A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt A b:/wc2/test/file4.txt A b:/wc2/test/file5.txt A b:/wc2/test/folder1 A b:/wc2/test/folder1/file7.txt A b:/wc2/test/folder1/folder2 A b:/wc2/test/folder1/folder2/file8.txt A b:/wc2/test/folder3 U b:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M b:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U b:/wc2 U b:/wc2/test U b:/wc2/test/file1.txt Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2012-11-19T19:40:29.036834Z | test add file 1 1| r4 | barry | 2012-11-19T19:40:29.395599Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 19-Nov-2012 19:40:29 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A b:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added b:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: b:/wc2/test/file1b.txt =================================================================== --- b:/wc2/test/file1b.txt (revision 7) +++ b:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - import Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:40:29 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:40:29 Text Last Updated: 19-Nov-2012 19:40:29 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 19-Nov-2012 19:40:30 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 19-Nov-2012 19:40:29 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 19-Nov-2012 19:40:29 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 19-Nov-2012 19:40:28 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 19-Nov-2012 19:40:28 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/file1.txt 7 barry 23 19-Nov-2012 19:40:30 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/file2.txt 3 barry 17 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/file3.txt 3 barry 17 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/file4.txt 3 barry 17 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/file5.txt 3 barry 0 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/folder1 3 barry 0 19-Nov-2012 19:40:29 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test b:/wc2/test/file1.txt b:/wc2/test/file1b.txt b:/wc2/test/file2.txt b:/wc2/test/file3.txt b:/wc2/test/file4.txt b:/wc2/test/file5.txt b:/wc2/test/folder1 b:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 19-Nov-2012 19:40:29 b:/wc2/test/file1.txt 7 barry 23 19-Nov-2012 19:40:30 b:/wc2/test/file1b.txt 3 barry 17 19-Nov-2012 19:40:29 b:/wc2/test/file2.txt 3 barry 17 19-Nov-2012 19:40:29 b:/wc2/test/file3.txt 3 barry 17 19-Nov-2012 19:40:29 b:/wc2/test/file4.txt 3 barry 17 19-Nov-2012 19:40:29 b:/wc2/test/file5.txt 3 barry 0 19-Nov-2012 19:40:29 b:/wc2/test/folder1 3 barry 0 19-Nov-2012 19:40:29 b:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A b:/wc2/test/file3b.txt D b:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry b:\wc2 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt 4 3 barry b:\wc2\test\file2.txt 9 9 barry b:\wc2\test\file3b.txt 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD update A file1b.txt A file2b.txt A file3b.txt D file2.txt D file3.txt Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M b:\wc2\test D b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt M b:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry b:\wc2 M 4 4 barry b:\wc2\test 4 4 barry b:\wc2\test\file1.txt 9 9 barry b:\wc2\test\file1b.txt D 4 3 barry b:\wc2\test\file2.txt A b:\wc2\test\file2b.txt 9 9 barry b:\wc2\test\file3b.txt M 4 3 barry b:\wc2\test\file4.txt 4 3 barry b:\wc2\test\file5.txt 4 3 barry b:\wc2\test\folder1 4 3 barry b:\wc2\test\folder1\file7.txt 4 3 barry b:\wc2\test\folder1\folder2 4 3 barry b:\wc2\test\folder1\folder2\file8.txt 4 3 barry b:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D file5.txt Info: PYSVN CMD status M file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: b:\wc2\test\.svn\text-base\file4.txt.svn-base is_binary: False kind: merged_file: b:\wc2\test\.svn\tmp\file4.txt.tmp mime_type: None my_file: b:\wc2\test\.svn\tmp\svn-D6E25BC5 node_kind: operation: path: b:/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: b:\wc2\test\.svn\tmp\text-base\file4.txt.svn-base A b:/wc2/test/file2b.txt D b:/wc2/test/file2.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R b:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2012-11-19T19:40:33.529202Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 19-Nov-2012 19:40:28 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 19-Nov-2012 19:40:28 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:40:29 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:40:29 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 19-Nov-2012 19:40:29 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A b:/wc2/test/file2.txt A b:/wc2/test/file3.txt D b:/wc2/test/file1b.txt D b:/wc2/test/file2b.txt D b:/wc2/test/file3b.txt U b:/wc2 U b:/wc2/test U b:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 9eb97a17-a9fb-4948-9ff9-1a389399bc26 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 19-Nov-2012 19:40:29 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A b:/wc3/test A b:/wc3/test/file1.txt A b:/wc3/test/file1b.txt A b:/wc3/test/file2b.txt A b:/wc3/test/file3b.txt A b:/wc3/test/file4.txt A b:/wc3/test/file5.txt A b:/wc3/test/folder1 A b:/wc3/test/folder1/file7.txt A b:/wc3/test/folder1/folder2 A b:/wc3/test/folder1/folder2/file8.txt A b:/wc3/test/folder3 U b:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A b:/wc3/test/file-merge-1.txt A b:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A b:/wc3/test-branch A b:/wc3/test-branch/file-merge-1.txt A b:/wc3/test-branch/file-merge-2.txt A b:/wc3/test-branch/file1.txt A b:/wc3/test-branch/file1b.txt A b:/wc3/test-branch/file2b.txt A b:/wc3/test-branch/file3b.txt A b:/wc3/test-branch/file4.txt A b:/wc3/test-branch/file5.txt A b:/wc3/test-branch/folder1 A b:/wc3/test-branch/folder1/file7.txt A b:/wc3/test-branch/folder1/folder2 A b:/wc3/test-branch/folder1/folder2/file8.txt A b:/wc3/test-branch/folder3 U b:/wc3 U b:/wc3/test Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A b:/wc3/test/file-merge-3.txt D b:/wc3/test/file-merge-1.txt M b:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A b:/wc3/test-branch/file-merge-3.txt D b:/wc3/test-branch/file-merge-1.txt U b:/wc3/test-branch U b:/wc3/test-branch/file-merge-2.txt merge_begin b:/wc3/test-branch merge_begin b:/wc3/test-branch/file-merge-2.txt merge_completed b:/wc3/test-branch Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed b:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M b:\wc3\test-branch D b:\wc3\test-branch\file-merge-1.txt MM b:\wc3\test-branch\file-merge-2.txt A + b:\wc3\test-branch\file-merge-3.txt M b:\wc3\test-branch\file1.txt M b:\wc3\test-branch\file1b.txt M b:\wc3\test-branch\file2b.txt M b:\wc3\test-branch\file3b.txt M b:\wc3\test-branch\file4.txt M b:\wc3\test-branch\file5.txt Info: PYSVN CMD diff b:\wc3\test-branch Property changes on: b:\wc3\test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Property changes on: b:\wc3\test-branch\file1b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1b.txt:r15 Property changes on: b:\wc3\test-branch\file2b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file2b.txt:r15 Property changes on: b:\wc3\test-branch\file4.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file4.txt:r15 Property changes on: b:\wc3\test-branch\file3b.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file3b.txt:r15 Property changes on: b:\wc3\test-branch\file5.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file5.txt:r15 Index: b:/wc3/test-branch/file-merge-1.txt =================================================================== --- b:/wc3/test-branch/file-merge-1.txt (revision 14) +++ b:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: b:/wc3/test-branch/file-merge-2.txt =================================================================== --- b:/wc3/test-branch/file-merge-2.txt (revision 14) +++ b:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: b:\wc3\test-branch\file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Property changes on: b:\wc3\test-branch\file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Property changes on: b:\wc3\test-branch\file1.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file1.txt:r15 Info: CMD c:\python27.win32\python.exe C:\wc\svn\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - end pysvn-1.9.22/Tests/test-01.win32.known_good-py2-svn1.7.log000644 000765 000024 00000073026 12610411004 023113 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.win32\python.exe Username: barry Info: PYSVN CMD c:\python27.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry 0 16-Oct-2015 16:06:03 file:///B:/repos/trunk 2 barry 0 16-Oct-2015 16:06:03 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 0| r3 | barry | 2015-10-16T15:06:04.871943Z | test add file 1 1| r4 | barry | 2015-10-16T15:06:05.465708Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry 0 16-Oct-2015 16:06:06 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" A B:/wc2/test/file1b.txt Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A b:\export1.native A b:\export1.native/file1.txt A b:\export1.native/file1b.txt A b:\export1.native/file2.txt A b:\export1.native/file3.txt A b:\export1.native/file4.txt A b:\export1.native/file5.txt A b:\export1.native/folder1 A b:\export1.native/folder1/file7.txt A b:\export1.native/folder1/folder2 A b:\export1.native/folder1/folder2/file8.txt A b:\export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A b:\export1.cr A b:\export1.cr/file1.txt A b:\export1.cr/file1b.txt A b:\export1.cr/file2.txt A b:\export1.cr/file3.txt A b:\export1.cr/file4.txt A b:\export1.cr/file5.txt A b:\export1.cr/folder1 A b:\export1.cr/folder1/file7.txt A b:\export1.cr/folder1/folder2 A b:\export1.cr/folder1/folder2/file8.txt A b:\export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A b:\export1.lf A b:\export1.lf/file1.txt A b:\export1.lf/file1b.txt A b:\export1.lf/file2.txt A b:\export1.lf/file3.txt A b:\export1.lf/file4.txt A b:\export1.lf/file5.txt A b:\export1.lf/folder1 A b:\export1.lf/folder1/file7.txt A b:\export1.lf/folder1/folder2 A b:\export1.lf/folder1/folder2/file8.txt A b:\export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A b:\export1.crlf A b:\export1.crlf/file1.txt A b:\export1.crlf/file1b.txt A b:\export1.crlf/file2.txt A b:\export1.crlf/file3.txt A b:\export1.crlf/file4.txt A b:\export1.crlf/file5.txt A b:\export1.crlf/folder1 A b:\export1.crlf/folder1/file7.txt A b:\export1.crlf/folder1/folder2 A b:\export1.crlf/folder1/folder2/file8.txt A b:\export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:06:05 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:06:05 Text Last Updated: 16-Oct-2015 16:06:05 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 16-Oct-2015 16:06:06 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 16-Oct-2015 16:06:05 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 16-Oct-2015 16:06:04 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 16-Oct-2015 16:06:03 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 16-Oct-2015 16:06:03 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 16-Oct-2015 16:06:05 file:///B:/repos/trunk/test/file1.txt 7 barry 23 16-Oct-2015 16:06:06 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/file2.txt 3 barry 17 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/file3.txt 3 barry 17 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/file4.txt 3 barry 17 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/file5.txt 3 barry 0 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/folder1 3 barry 0 16-Oct-2015 16:06:04 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 16-Oct-2015 16:06:05 B:/wc2/test/file1.txt 7 barry 23 16-Oct-2015 16:06:06 B:/wc2/test/file1b.txt 3 barry 17 16-Oct-2015 16:06:04 B:/wc2/test/file2.txt 3 barry 17 16-Oct-2015 16:06:04 B:/wc2/test/file3.txt 3 barry 17 16-Oct-2015 16:06:04 B:/wc2/test/file4.txt 3 barry 17 16-Oct-2015 16:06:04 B:/wc2/test/file5.txt 3 barry 0 16-Oct-2015 16:06:04 B:/wc2/test/folder1 3 barry 0 16-Oct-2015 16:06:04 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\.svn\pristine\4e\4e86be31cda02c6a3fb50fe49d570555a9c28d66.svn-base is_binary: False kind: merged_file: B:\wc2\.svn\tmp\file4.txt.tmp mime_type: None my_file: B:\wc2\.svn\tmp\svn-2C301C85 node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: None src_right_version: None their_file: B:\wc2\.svn\pristine\68\68429c38aebed8d3491b3f4a50041ad273e78cf7.svn-base A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2015-10-16T15:06:10.746966Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 16-Oct-2015 16:06:03 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 16-Oct-2015 16:06:03 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:06:05 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:06:05 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 16-Oct-2015 16:06:05 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 788010f5-5f66-e844-892c-70dfd1ead650 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 16-Oct-2015 16:06:06 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_begin B:/wc3/test-branch/file-merge-2.txt merge_completed B:/wc3/test-branch merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch/file-merge-3.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch U B:/wc3/test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt MM B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test:r15* Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (working copy) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Property changes on: B:/wc3/test-branch/file-merge-2.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-2.txt:r15 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== --- B:/wc3/test-branch/file-merge-3.txt (revision 14) +++ B:/wc3/test-branch/file-merge-3.txt (working copy) Property changes on: B:/wc3/test-branch/file-merge-3.txt ___________________________________________________________________ Added: svn:mergeinfo Merged /trunk/test/file-merge-3.txt:r15 Info: CMD c:\python27.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 16-Oct-2015 16:06:16 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 16-Oct-2015 16:06:15 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 16-Oct-2015 16:06:15 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 16-Oct-2015 16:06:14 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 16-Oct-2015 16:06:14 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 16-Oct-2015 16:06:14 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.12.log000644 000765 000024 00000010572 13461042336 023223 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.11.log000644 000765 000024 00000007721 13404261102 023202 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2018-04-02T10:51:53.374564Z | test add file 1 2| r3 | barry | 2018-04-02T10:51:53.906843Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.10.log000644 000765 000024 00000043676 13260152535 023237 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:39 Lock Token: opaquelocktoken:0d6d7e92-8e7a-4815-9b65-60a1cfe3e91a Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:40 Lock Token: opaquelocktoken:f0d7ec3a-8b8d-4586-8c03-2f72df423017 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:22:38 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:22:40 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:40 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-06.win32.known_good-py3-svn1.6.log000644 000765 000024 00000004376 11723221274 023136 0ustar00barrystaff000000 000000 WorkDir: C:\wc\svn\pysvn\Extension PYTHON: c:\python32.win32\python.exe Username: barry Info: PYSVN CMD c:\python32.win32\python.exe C:\wc\svn\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-06 Info: CMD subst b: C:\wc\svn\pysvn\Extension\Tests\testroot-06 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-06 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-06 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A b:/wc1/test U b:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A file1.txt Info: PYSVN CMD add file2.txt A file2.txt Info: PYSVN CMD checkin -m "commit added files" A b:/wc1/test/file1.txt A b:/wc1/test/file2.txt Revision 3 Info: Test - info of path Info: PYSVN CMD info file1.txt Path: file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository: file:///B:/repos Repository UUID: 4c6ac313-389f-6c43-b318-771df97df98e Revision: 3 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 3 Last Changed Date: 28-Feb-2012 13:02:07 Text Last Updated: 28-Feb-2012 13:02:06 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of path Info: PYSVN CMD info2 file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 4c6ac313-389f-6c43-b318-771df97df98e Last changed author: barry Last Changed Date: 28-Feb-2012 13:02:07 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 28-Feb-2012 13:02:06 Checksum: 1e41522fd7b6b6325667c8554893a6db Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 4c6ac313-389f-6c43-b318-771df97df98e Last changed author: barry Last Changed Date: 28-Feb-2012 13:02:07 Last changed revision: 3 Node kind: file pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.4.log000644 000765 000024 00000017274 11253135715 023134 0ustar00barrystaff000000 000000 WorkDir: L:\wc\pysvn\trunk\pysvn\Extension PYTHON: c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests > setlocal L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client L:\wc\pysvn\trunk\pysvn\Extension\Tests > set PYSVN=c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir L:\wc\pysvn\trunk\pysvn\Extension\Tests > mkdir testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > subst b: L:\wc\pysvn\trunk\pysvn\Extension\Tests\testroot-04 L:\wc\pysvn\trunk\pysvn\Extension\Tests > cd /d b:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" B:\ > rem Install hooks B:\ > rem echo echo svnlook info %1 -t %2 ^>b:\test_1.output >b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook info %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > rem echo svnlook changed %1 -t %2 ^>^>b:\test_1.output >>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=L:\wc\pysvn\trunk\pysvn\Extension\Source;L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py %* >>b:\test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > rem Add one dir B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:/repos 2-1 Info: pre commit test 1 Info: Transaction( b:/repos, 2-1) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2008-10-12T13:12:57.855539Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A b:/wc/a U b:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A b:/wc/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A wc/a/file1.txt A wc/file1.txt Revision 4 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:/repos 3-1 Info: pre commit test 1 Info: Transaction( b:/repos, 3-1) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2008-10-12T13:12:59.818459Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M wc/a/file1.txt M wc/file1.txt Revision 5 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:/repos 4-1 Info: pre commit test 1 Info: Transaction( b:/repos, 4-1) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2008-10-12T13:13:01.571067Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' B:\ > rem test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D b:/wc/a/file1.txt B:\ > c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D wc/a/file1.txt Revision 6 B:\ > rem test_1.output start ---------------------------------------- B:\ > type b:\test_1.output c:\python25\python.exe L:\wc\pysvn\trunk\pysvn\Extension\Tests\test_04_pre_commit_test_1.py b:/repos 5-1 Info: pre commit test 1 Info: Transaction( b:/repos, 5-1) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2008-10-12T13:13:03.584062Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None B:\ > rem test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.10.log000644 000765 000024 00000013722 13260120165 023221 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-02.cmd000644 000765 000024 00000000436 12703714102 016233 0ustar00barrystaff000000 000000 setlocal @rem @rem test-02.cmd @rem test threading, but needs special svn server @rem set PYTHONPATH=. if exist testroot rmdir /s /q testroot mkdir testroot %PYTHON% %BUILDER_TOP_DIR%\Tests\thread_tests.py 20 http://torment.chelsea.private/svn/repos1/Latest/ endlocal pysvn-1.9.22/Tests/test-03.win32.known_good-py3-svn1.5.log000644 000765 000024 00000002602 11255444226 023124 0ustar00barrystaff000000 000000 WorkDir: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31 PYTHON: c:\python31\python.exe Username: barry C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests >setlocal C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests >mkdir testroot-03 C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests >subst b: C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests\testroot-03 C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests >mkdir b:\configdir C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests >cd testroot-03 C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests\testroot-03 >c:\python31\python.exe ..\test_callbacks.py Traceback (most recent call last): File "..\test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Traceback (most recent call last): File "..\test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Info: passed Info: Expecting error None Info: Passed 4 C:\BuildRoot\Win32-MSVC90-1.5.6\pysvn\py31\Tests\testroot-03 >endlocal pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.10.log000644 000765 000024 00000007125 13260120165 023200 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.13.log000644 000765 000024 00000023733 13566476551 023232 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:50 Lock Token: opaquelocktoken:853bde7e-8aaf-874b-bc69-1005953af9ac Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:57 Lock Token: opaquelocktoken:7b8e9287-f31a-bc46-9b90-17ec8f17908e Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 11:36:49 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:57 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.8.log000644 000765 000024 00000015275 13070513454 023165 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.4 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.4 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 3 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2017-04-03T18:39:54.261331Z | test add file 1 2| r3 | barry | 2017-04-03T18:39:55.123968Z | test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 4 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Revision 5 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-08.win32.known_good-py2-svn1.14.log000644 000765 000024 00000007125 13660472625 023223 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry Info: PYSVN CMD c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-08 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-08 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-08 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD mkdir folder2 A B:/wc1/folder2 Info: PYSVN CMD mkdir folder2\sub2 A B:/wc1/folder2/sub2 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\file-b.txt A B:/wc1/folder2/file-b.txt Info: Create File folder2\sub2\file-b.txt - test add file 2 Info: PYSVN CMD add folder2\sub2\file-b.txt A B:/wc1/folder2/sub2/file-b.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt A B:/wc1/folder2 A B:/wc1/folder2/file-b.txt A B:/wc1/folder2/sub2 A B:/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD diff folder1\file-a.txt Info: CMD type b:\diff-1.patch Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CMD type folder1\file-a.txt test add file 1 test add line 2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/folder1 A B:/wc2/folder1/file-a.txt A B:/wc2/folder2 A B:/wc2/folder2/file-b.txt A B:/wc2/folder2/sub2 A B:/wc2/folder2/sub2/file-b.txt U B:/wc2 update_started B:/wc2 Checked out revision 2 Info: CMD cd /d b:\wc2 Info: CMD type folder1\file-a.txt test add file 1 b:\wc2 >call :cmd_pysvn patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >echo. 1>&2 b:\wc2 >echo Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles 1>&2 Info: PYSVN CMD patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles b:\wc2 >c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir patch b:\diff-1.patch b:\wc2 --no-remove-tempfiles patch B:/wc2/folder1/file-a.txt patch_applied_hunk B:/wc2/folder1/file-a.txt b:\wc2 >goto :eof b:\wc2 >call :cmd_shell type folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD type folder1\file-a.txt Info: CMD type folder1\file-a.txt b:\wc2 >type folder1\file-a.txt test add file 1 test add line 2 b:\wc2 >goto :eof b:\wc2 >call :cmd_shell fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >echo. b:\wc2 >echo Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Info: CMD fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt b:\wc2 >fc b:\wc1\folder1\file-a.txt b:\wc2\folder1\file-a.txt Comparing files B:\WC1\FOLDER1\file-a.txt and B:\WC2\FOLDER1\FILE-A.TXT FC: no differences encountered b:\wc2 >goto :eof b:\wc2 >goto :eof pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.11.log000644 000765 000024 00000074076 13404261102 023201 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T10:35:46.371054Z | test add file 1 2| r4 | barry | 2018-04-02T10:35:47.178306Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 11:35:48 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Text Last Updated: 02-Apr-2018 11:35:47 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 11:35:49 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 11:35:47 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 11:35:46 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 11:35:44 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 11:35:43 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 11:35:47 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 11:35:47 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder1 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T10:36:00.639488Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 11:35:48 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python35.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 11:36:06 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/svn_min_version.py000644 000765 000024 00000001040 11076210000 020116 0ustar00barrystaff000000 000000 import pysvn import sys def main(argv): print( 'Info: Checking for min version: %s against SVN version %s' % ('.'.join(argv[1:]), pysvn.svn_version) ) for index in range(1,len(argv)): if pysvn.svn_version[ index-1 ] > int( argv[ index ] ): break if pysvn.svn_version[ index-1 ] < int( argv[ index ] ): print( 'Warning: SVN version is not new enough' ) return 1 print( 'Info: SVN version is new enough' ) return 0 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Tests/test-06.cmd000644 000765 000024 00000003676 14046474103 016256 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-06.cmd @rem test info and info2 @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-06 call :cmd_shell subst b: %CD%\testroot-06 call :cmd_shell cd /d b:\ call :cmd_shell %SVN_BIN%\svnadmin create b:/repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-06 add trunk" call :cmd_pysvn mkdir file:///b:/repos/trunk/test -m "test-06 add test" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd b:\wc1\test echo Info: Setup - add files call :cmd_createfile file1.txt test add file 1 call :cmd_createfile file2.txt test add file 2 call :cmd_pysvn add file1.txt call :cmd_pysvn add file2.txt call :cmd_pysvn checkin -m "commit added files" echo Info: Test - info of path call :cmd_pysvn info file1.txt echo Info: Test - info2 of path call :cmd_pysvn info2 file1.txt echo Info: Test - info2 of URL call :cmd_pysvn info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. echo Info: PYSVN CMD %* %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-07.unix.known_good-py3-svn1.14.log000644 000765 000024 00000013722 13660472625 023244 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python3 Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-07 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: mkdir tmp Info: PYSVN command /bin/python3 /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk -m test-07 add trunk commit_finalizing . Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk/test -m test-07 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: Setup - add files Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_a2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b1.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: add file_b2.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test Info: pysvn command: status --verbose /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1 2 2 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test 3 3 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt 4 4 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt 5 5 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt 6 6 barry /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a2.txt changelist-two /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_a1.txt changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-07/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.9.log000644 000765 000024 00000006320 12677513364 023146 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win32\python.exe Username: barry Info: PYSVN CMD c:\python35.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt commit_finalizing . Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt commit_finalizing . Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt commit_finalizing . Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt commit_finalizing . Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.11.log000644 000765 000024 00000013566 13404261102 023225 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-05.unix.known_good-py2-svn1.14.log000644 000765 000024 00000043676 13660472625 023254 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:39 Lock Token: opaquelocktoken:0d6d7e92-8e7a-4815-9b65-60a1cfe3e91a Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 13:22:37 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 13:22:39 3 barry 16 01-Apr-2018 13:22:37 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy While preparing '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:37 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 13:22:40 Lock Token: opaquelocktoken:f0d7ec3a-8b8d-4586-8c03-2f72df423017 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 13:22:38 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 13:22:40 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 4c8e1f49-0427-43df-b87e-5993bd844b2b Last changed author: barry Last Changed Date: 01-Apr-2018 13:22:40 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 13:22:40 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.5.log000644 000765 000024 00000030217 11253135715 023146 0ustar00barrystaff000000 000000 WorkDir: /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25 PYTHON: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python Username: bscott Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir mkdir file:///Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir mkdir file:///Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir mkdir file:///Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/test_04_pre_commit_test_1.py /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos 2-2 Info: pre commit test 1 Info: Transaction( /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: bscott svn:date: 2009-04-17T15:22:53.727841Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir checkout file:///Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos/trunk/test /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc A /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a U /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir add /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/file1.txt A /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir add /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a/file1.txt A /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir checkin -m Add two files /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc A wc/a/file1.txt A wc/file1.txt Revision 4 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/test_04_pre_commit_test_1.py /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos 3-3 Info: pre commit test 1 Info: Transaction( /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: bscott svn:date: 2009-04-17T15:22:55.621602Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: test_1.output end ------------------------------------------ Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir propset svn:eol-style native /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc M wc/a/file1.txt M wc/file1.txt Revision 5 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/test_04_pre_commit_test_1.py /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos 4-4 Info: pre commit test 1 Info: Transaction( /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: bscott svn:date: 2009-04-17T15:22:56.483707Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir rm /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a/file1.txt D /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir checkin -m Delete one file /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc D wc/a/file1.txt Revision 6 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/test_04_pre_commit_test_1.py /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos 5-5 Info: pre commit test 1 Info: Transaction( /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: bscott svn:date: 2009-04-17T15:22:57.458015Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir cp /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/file1.txt /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/file1copy.txt A /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/configdir checkin -m Copy one file /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/wc A wc/file1copy.txt Revision 7 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/test_04_pre_commit_test_1.py /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos 6-6 Info: pre commit test 1 Info: Transaction( /Users/bscott/BuildTemp/Darwin_macmini/svn-1.5.6/pysvn/py25/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:log: Copy one file svn:check-locks: true svn:author: bscott svn:date: 2009-04-17T15:22:59.276332Z Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ pysvn-1.9.22/Tests/test-05.sh000755 000765 000024 00000007611 13262407737 016130 0ustar00barrystaff000000 000000 #!/bin/bash # # test-05.sh # test info2 with locked files # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-05 cmd cd testroot-05 TESTROOT=${WORKDIR}/Tests/testroot-05 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-05 add trunk" cmd_pysvn mkdir file://${TESTROOT}/repos/trunk/test -m "test-05 add test" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1/test echo Info: Setup - add files echo test add file 1 >file1.txt echo test add file 2 >file2.txt cmd_pysvn add file1.txt cmd_pysvn add file2.txt cmd_pysvn checkin -m "commit added files" echo Info: Setup - checkout wc2 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc2 echo Info: Test - status of unlocked files cmd_pysvn status --verbose ${TESTROOT}/wc1 echo Info: Test - info2 of unlocked files cmd_pysvn info2 ${TESTROOT}/wc1/test/file1.txt echo Info: Test - list of unlocked files cmd_pysvn list --verbose --fetch-locks ${TESTROOT}/wc1/test/file1.txt cmd_pysvn list --verbose --fetch-locks ${TESTROOT}/wc1/test echo Info: Test - lock unlocked file cmd_pysvn lock ${TESTROOT}/wc1/test/file1.txt -m "lock comment test 05" echo Info: Test - status of locked files cmd_pysvn status --verbose ${TESTROOT}/wc1 echo Info: Test - info2 of locked files cmd_pysvn info2 ${TESTROOT}/wc1/test/file1.txt echo Info: Test - list of locked files cmd_pysvn list --verbose --fetch-locks ${TESTROOT}/wc1/test/file1.txt cmd_pysvn list --verbose --fetch-locks ${TESTROOT}/wc1/test echo Info: Test - attempt to checkin over a locked file cmd cd ${TESTROOT}/wc2/test echo Change to file 1 >>file1.txt echo Change to file 2 >>file2.txt cmd_pysvn commit -m "change when file locked in other wc" . echo Info: Test - lock locked file cmd_pysvn lock ${TESTROOT}/wc2/test/file1.txt echo Info: Test - lock --force locked file cmd_pysvn lock --force ${TESTROOT}/wc2/test/file1.txt -m "Stealing lock" echo Info: Test - info2 of locked files cmd_pysvn info2 ${TESTROOT}/wc2/test/file1.txt echo Info: Test - status of locked files cmd_pysvn status --verbose ${TESTROOT}/wc2 echo Info: Test - commit with lock cmd_pysvn commit -m "change when file locked in this wc" . echo Info: Test - status of locked files cmd_pysvn status --verbose ${TESTROOT}/wc2 echo Info: Test - list of locked files cmd_pysvn list --verbose --fetch-locks --recursive ${TESTROOT}/wc2 echo Info: Test - unlock locked file cmd_pysvn unlock ${TESTROOT}/wc2/test/file1.txt echo Info: Test - status of unlocked files cmd_pysvn status --verbose ${TESTROOT}/wc2 echo Info: Test - list of unlocked files cmd_pysvn list --verbose --fetch-locks --recursive ${TESTROOT}/wc2 echo Info: Test - status of locked files cmd_pysvn status --verbose ${TESTROOT}/wc1 echo Info: Test - list of unlocked files cmd_pysvn list --verbose --fetch-locks --recursive ${TESTROOT}/wc1 echo Info: Test - update with stolen lock cmd_pysvn update ${TESTROOT}/wc1/test echo Info: Test - status of locked files cmd_pysvn status --verbose ${TESTROOT}/wc1 echo Info: Test - info2 of URL cmd_pysvn info2 --revision HEAD file://${TESTROOT}/repos/trunk/test/file1.txt echo Info: Test - list of locked files cmd_pysvn list --verbose --fetch-locks --recursive ${TESTROOT}/wc1 true pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.12.log000644 000765 000024 00000033642 13461042336 023207 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.13.log000644 000765 000024 00000033642 13566476551 023230 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-09.win32.known_good-py3-svn1.14.log000644 000765 000024 00000010067 14046474103 023214 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python38.Win64\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin Info: PYSVN CMD c:\python38.Win64\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-09 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-09 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD C:\BuildRoot\Win64-VC-14.1-1.14.0\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-09 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/folder1 A B:/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: Append File folder1\file-a.txt - test add line 2 Info: PYSVN CMD checkin -m "add line 2" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: PYSVN CMD diff folder1\file-a.txt Info: PYSVN CMD annotate folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2020-08-31T14:03:46.506319Z | test add file 1 2| r3 | barry | 2020-08-31T14:03:47.131327Z | test add line 2 Info: PYSVN CMD annotate2 folder1\file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: PYSVN CMD propset_local svn:eol native folder1/file-a.txt property_added B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: PYSVN CMD checkin -m "eol is native" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: PYSVN CMD propdel_local svn:eol folder1/file-a.txt property_deleted B:/wc1/folder1/file-a.txt Info: PYSVN CMD proplist --verbose folder1/file-a.txt Info: PYSVN CMD checkin -m "remove eol" M B:/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: PYSVN CMD "propset_remote" test-case 09 file:///b:/repos/trunk/folder1/file-a.txt --revision 5 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Properties on 'file:///B:/repos/trunk/folder1/file-a.txt': test-case: 09 Info: PYSVN CMD "propdel_remote" test-case file:///b:/repos/trunk/folder1/file-a.txt --revision 6 -m "set custom prop" commit_finalizing . Info: PYSVN CMD proplist --verbose file:///b:/repos/trunk/folder1/file-a.txt Info: PYSVN CMD update update_started B:/wc1 Updated to revision 7 Info: CMD cd /d folder1 Info: Create File unversioned.txt - empty Info: PYSVN CMD status2 ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 7 7 barry B:\wc1\folder1\file-a.txt Info: PYSVN CMD lock file-a.txt locked B:/wc1/folder1/file-a.txt Info: PYSVN CMD status2 K B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\unversioned.txt Info: PYSVN CMD status2 --verbose --quiet 7 7 barry B:\wc1\folder1 K 7 7 barry B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.4.log000644 000765 000024 00000025711 11253135715 023150 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_pre_commit_test_1.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 2-1 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 2-1) ... Info: revproplist() ... svn:log: pre-commit test 1 svn:check-locks: true svn:author: barry svn:date: 2008-10-07T19:55:31.759324Z Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A wc/a/file1.txt A wc/file1.txt Revision 4 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_pre_commit_test_1.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 3-1 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 3-1) ... Info: revproplist() ... svn:log: Add two files svn:check-locks: true svn:author: barry svn:date: 2008-10-07T19:55:34.542409Z Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: test_1.output end ------------------------------------------ Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc M wc/a/file1.txt M wc/file1.txt Revision 5 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_pre_commit_test_1.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 4-1 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 4-1) ... Info: revproplist() ... svn:log: Mod one file Mod one prop svn:check-locks: true svn:author: barry svn:date: 2008-10-07T19:55:36.343643Z Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc D wc/a/file1.txt Revision 6 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_pre_commit_test_1.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 5-1 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 5-1) ... Info: revproplist() ... svn:log: Delete one file svn:check-locks: true svn:author: barry svn:date: 2008-10-07T19:55:38.075866Z Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: test_1.output end ------------------------------------------ Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/wc A wc/file1copy.txt Revision 7 Info: test_1.output start ---------------------------------------- /Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn-next/Extension/Tests/test_04_pre_commit_test_1.py /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos 6-1 Info: pre commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-04/repos, 6-1) ... Info: revproplist() ... svn:log: Copy one file svn:check-locks: true svn:author: barry svn:date: 2008-10-07T19:55:40.622891Z Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: test_1.output end ------------------------------------------ pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.10.log000644 000765 000024 00000013566 13260120165 023227 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-07.win32.known_good-py3-svn1.8.log000644 000765 000024 00000006122 12573522653 023141 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python34.win32\python.exe Username: barry Info: PYSVN CMD c:\python34.win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-07 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-07 Info: CMD cd /d b:\ Info: CMD svnadmin create b:/repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-07 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-07 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:/wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd /d b:/wc1/test Info: Setup - add files Info: Create File file_a1.txt - test add file 1 Info: PYSVN CMD add file_a1.txt A B:/wc1/test/file_a1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a1.txt Revision 3 Info: Create File file_a2.txt - test add file 2 Info: PYSVN CMD add file_a2.txt A B:/wc1/test/file_a2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_a2.txt Revision 4 Info: Create File file_b1.txt - test add file 1 Info: PYSVN CMD add file_b1.txt A B:/wc1/test/file_b1.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b1.txt Revision 5 Info: Create File file_b2.txt - test add file 2 Info: PYSVN CMD add file_b2.txt A B:/wc1/test/file_b2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file_b2.txt Revision 6 Info: PYSVN CMD status --verbose b:/wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file_a1.txt 4 4 barry B:\wc1\test\file_a2.txt 5 5 barry B:\wc1\test\file_b1.txt 6 6 barry B:\wc1\test\file_b2.txt Info: running test_07_copy2 Info: Copy2 with no revision and no peg_revision Info: Copy2 with no peg_revision Info: Copy2 Info: Copy2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_move2 Info: Move2 will succeed Info: Move2 will raise error Info: Error: 'Operation does not support multiple sources' Info: Code: 195014, Message: 'Operation does not support multiple sources' Info: running test_07_changelist After add_to_changelist show all changelist-one B:/wc1/test/file_a1.txt changelist-two B:/wc1/test/file_a2.txt changelist-one B:/wc1/test/file_b1.txt changelist-two B:/wc1/test/file_b2.txt After add_to_changelist show changelist-two changelist-two B:/wc1/test/file_a2.txt changelist-two B:/wc1/test/file_b2.txt After remove_from_changelists all changelist-two show all changelist-one B:/wc1/test/file_a1.txt changelist-one B:/wc1/test/file_b1.txt After remove_from_changelists all show all changelist-one B:/wc1/test/file_b1.txt pysvn-1.9.22/Tests/test-07.cmd000644 000765 000024 00000004763 14046474103 016255 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-07.cmd @rem test copy2, move2 and changelist @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-07 call :cmd_shell subst b: %CD%\testroot-07 call :cmd_shell cd /d b:\ call :cmd_shell %SVN_BIN%\svnadmin create b:/repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-07 add trunk" call :cmd_pysvn mkdir file:///b:/repos/trunk/test -m "test-07 add test" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:/wc1 call :cmd_shell cd /d b:/wc1/test echo Info: Setup - add files call :cmd_createfile file_a1.txt test add file 1 call :cmd_pysvn add file_a1.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_createfile file_a2.txt test add file 2 call :cmd_pysvn add file_a2.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_createfile file_b1.txt test add file 1 call :cmd_pysvn add file_b1.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_createfile file_b2.txt test add file 2 call :cmd_pysvn add file_b2.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_pysvn status --verbose b:/wc1 echo Info: running test_07_copy2 %PYTHON% %BUILDER_TOP_DIR%/Tests/test_07_copy2.py b:/configdir echo Info: running test_07_move2 %PYTHON% %BUILDER_TOP_DIR%/Tests/test_07_move2.py b:/configdir echo Info: running test_07_changelist %PYTHON% %BUILDER_TOP_DIR%/Tests/test_07_changelist.py b:/configdir rem echo Info: running test_07_revprops rem %PYTHON% %BUILDER_TOP_DIR%/Tests/test_07_revprops.py b:/configdir goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. echo Info: PYSVN CMD %* %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.10.log000644 000765 000024 00000074246 14046541473 023216 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 11-May-2021 17:12:50 file:///B:/repos/trunk 2 barry - 11-May-2021 17:12:50 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2021-05-11T16:12:53.253316Z | test add file 1 2| r4 | barry | 2021-05-11T16:12:53.985909Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 11-May-2021 17:12:55 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-May-2021 17:12:53 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-May-2021 17:12:53 Text Last Updated: 11-May-2021 17:12:54 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 11-May-2021 17:12:56 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 11-May-2021 17:12:53 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 11-May-2021 17:12:53 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 11-May-2021 17:12:50 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 11-May-2021 17:12:50 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 11-May-2021 17:12:53 file:///B:/repos/trunk/test/file1.txt 7 barry 23 11-May-2021 17:12:56 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 11-May-2021 17:12:53 file:///B:/repos/trunk/test/file2.txt 3 barry 17 11-May-2021 17:12:53 file:///B:/repos/trunk/test/file3.txt 3 barry 17 11-May-2021 17:12:53 file:///B:/repos/trunk/test/file4.txt 3 barry 17 11-May-2021 17:12:53 file:///B:/repos/trunk/test/file5.txt 3 barry - 11-May-2021 17:12:53 file:///B:/repos/trunk/test/folder1 3 barry - 11-May-2021 17:12:53 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 11-May-2021 17:12:53 B:/wc2/test/file1.txt 7 barry 23 11-May-2021 17:12:56 B:/wc2/test/file1b.txt 3 barry 17 11-May-2021 17:12:53 B:/wc2/test/file2.txt 3 barry 17 11-May-2021 17:12:53 B:/wc2/test/file3.txt 3 barry 17 11-May-2021 17:12:53 B:/wc2/test/file4.txt 3 barry 17 11-May-2021 17:12:53 B:/wc2/test/file5.txt 3 barry - 11-May-2021 17:12:53 B:/wc2/test/folder1 3 barry - 11-May-2021 17:12:53 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2021-05-11T16:13:06.060755Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-May-2021 17:12:50 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 11-May-2021 17:12:50 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-May-2021 17:12:53 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-May-2021 17:12:53 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 11-May-2021 17:12:53 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: b67cfced-738c-fd43-b80d-8037216d0ed9 Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 11-May-2021 17:12:55 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python36.Win32\python.exe -u C:\Users\barry\Projects\pysvn\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 11-May-2021 17:13:16 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 11-May-2021 17:13:15 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 11-May-2021 17:13:15 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 11-May-2021 17:13:14 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 11-May-2021 17:13:14 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 11-May-2021 17:13:13 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.7.log000644 000765 000024 00000013272 12273472574 023170 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/diff-1.patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-09.unix.known_good-py3-svn1.9.log000644 000765 000024 00000015675 13437251721 023175 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/Projects/pysvn/Extension PYTHON: /usr/local/bin/python3.7 Username: barry Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: mkdir testroot-09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests Info: Command: cd testroot-09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.7 /Users/barry/Projects/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.07.00 --config-dir /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/configdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: svnadmin create /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos Info: Setup - mkdir Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: pysvn command: mkdir file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk -m test-09 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: pysvn command: checkout file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Checked out revision 1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09 Info: Command: cd /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 A /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m add line 2 M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 3 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | barry | 2019-03-04T15:58:05.346274Z | test add file 1 2| r3 | barry | 2019-03-04T15:58:06.179791Z | test add line 2 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: annotate2 folder1/file-a.txt A /trunk/folder1/file-a.txt A /trunk/folder1/file-a.txt 1| r2 | test add file 1 2| r3 | test add line 2 Info: propset_local Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_local svn:eol native folder1/file-a.txt property_added /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Properties on 'folder1/file-a.txt': svn:eol: native Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m eol is native M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 4 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_local svn:eol folder1/file-a.txt property_deleted /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: checkin -m remove eol M /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt commit_finalizing . Revision 5 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propset_remote test-case 09 file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 5 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Properties on 'file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt': test-case: 09 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: propdel_remote test-case file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt --revision 6 -m set custom prop commit_finalizing . Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: proplist --verbose file:///Users/barry/Projects/pysvn/Extension/Tests/testroot-09/repos/trunk/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: pysvn command: update update_started /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Updated to revision 7 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1 Info: Command: cd folder1 Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: Command: touch unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . 7 7 barry file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: lock file-a.txt locked /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1/file-a.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 K file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose 7 7 barry . K 7 7 barry file-a.txt ? unversioned.txt Info: CWD: /Users/barry/Projects/pysvn/Extension/Tests/testroot-09/wc1/folder1 Info: pysvn command: status2 --verbose --quiet 7 7 barry . K 7 7 barry file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.12.log000644 000765 000024 00000023733 13461042336 023211 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:50 Lock Token: opaquelocktoken:853bde7e-8aaf-874b-bc69-1005953af9ac Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:57 Lock Token: opaquelocktoken:7b8e9287-f31a-bc46-9b90-17ec8f17908e Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 11:36:49 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:57 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.10.log000644 000765 000024 00000024101 14046541473 023203 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\Projects\pysvn\Extension PYTHON: c:\python36.Win32\python.exe Username: barry SVN_BIN: C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin Info: PYSVN CMD c:\python36.Win32\python.exe C:\Users\barry\Projects\pysvn\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\Projects\pysvn\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD C:\BuildRoot\Win32-VC-14.1-1.10.7\dist\bin\svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e46cab80-a586-bd4b-985d-24dff7742cb4 Last changed author: barry Last Changed Date: 11-May-2021 17:39:05 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 11-May-2021 17:39:04 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 11-May-2021 17:39:05 B:/wc1/test 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file1.txt 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e46cab80-a586-bd4b-985d-24dff7742cb4 Last changed author: barry Last Changed Date: 11-May-2021 17:39:05 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 11-May-2021 17:39:07 Lock Token: opaquelocktoken:b7d50ef5-c492-8143-80bf-3c42fa5d3571 Lock Comment: Schedule: normal Text Last Updated: 11-May-2021 17:39:04 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2021-05-11 17:39:07 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 11-May-2021 17:39:05 B:/wc1/test 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2021-05-11 17:39:07 3 barry 17 11-May-2021 17:39:05 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: e46cab80-a586-bd4b-985d-24dff7742cb4 Last changed author: barry Last Changed Date: 11-May-2021 17:39:05 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 11-May-2021 17:39:08 Lock Token: opaquelocktoken:fe82bbcd-2625-eb4b-bafd-54ddd7e5da20 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 11-May-2021 17:39:06 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 11-May-2021 17:39:05 B:/wc2 3 barry - 11-May-2021 17:39:05 B:/wc2/test 3 barry 17 11-May-2021 17:39:05 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2021-05-11 17:39:08 3 barry 17 11-May-2021 17:39:05 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 11-May-2021 17:39:09 B:/wc2 4 barry - 11-May-2021 17:39:09 B:/wc2/test 4 barry 35 11-May-2021 17:39:09 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2021-05-11 17:39:08 4 barry 35 11-May-2021 17:39:09 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 11-May-2021 17:39:09 B:/wc2 4 barry - 11-May-2021 17:39:09 B:/wc2/test 4 barry 35 11-May-2021 17:39:09 B:/wc2/test/file1.txt 4 barry 35 11-May-2021 17:39:09 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 11-May-2021 17:39:09 B:/wc1 4 barry - 11-May-2021 17:39:09 B:/wc1/test 4 barry 35 11-May-2021 17:39:09 B:/wc1/test/file1.txt 4 barry 35 11-May-2021 17:39:09 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: e46cab80-a586-bd4b-985d-24dff7742cb4 Last changed author: barry Last Changed Date: 11-May-2021 17:39:09 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 11-May-2021 17:39:09 B:/wc1 4 barry - 11-May-2021 17:39:09 B:/wc1/test 4 barry 35 11-May-2021 17:39:09 B:/wc1/test/file1.txt 4 barry 35 11-May-2021 17:39:09 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.9.log000644 000765 000024 00000010572 12710201513 023137 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.8.log000644 000765 000024 00000023356 13260740056 023137 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: a343a701-b2ae-de48-a4f9-25f36da0d732 Last changed author: barry Last Changed Date: 02-Apr-2018 20:01:41 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 20:01:40 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 20:01:41 B:/wc1/test 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: a343a701-b2ae-de48-a4f9-25f36da0d732 Last changed author: barry Last Changed Date: 02-Apr-2018 20:01:41 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 20:01:42 Lock Token: opaquelocktoken:8dcb26b0-607e-3e44-ad89-13295ad0dddb Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 20:01:40 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 20:01:42 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 20:01:41 B:/wc1/test 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 20:01:42 3 barry 17 02-Apr-2018 20:01:41 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: a343a701-b2ae-de48-a4f9-25f36da0d732 Last changed author: barry Last Changed Date: 02-Apr-2018 20:01:41 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 20:01:44 Lock Token: opaquelocktoken:d032b061-8972-7a4d-a106-30ced2e356b4 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 20:01:42 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 20:01:41 B:/wc2 3 barry 0 02-Apr-2018 20:01:41 B:/wc2/test 3 barry 17 02-Apr-2018 20:01:41 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 20:01:44 3 barry 17 02-Apr-2018 20:01:41 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 20:01:45 B:/wc2 4 barry 0 02-Apr-2018 20:01:45 B:/wc2/test 4 barry 35 02-Apr-2018 20:01:45 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 20:01:44 4 barry 35 02-Apr-2018 20:01:45 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 20:01:45 B:/wc2 4 barry 0 02-Apr-2018 20:01:45 B:/wc2/test 4 barry 35 02-Apr-2018 20:01:45 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 20:01:45 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 20:01:45 B:/wc1 4 barry 0 02-Apr-2018 20:01:45 B:/wc1/test 4 barry 35 02-Apr-2018 20:01:45 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 20:01:45 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: a343a701-b2ae-de48-a4f9-25f36da0d732 Last changed author: barry Last Changed Date: 02-Apr-2018 20:01:45 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 20:01:45 B:/wc1 4 barry 0 02-Apr-2018 20:01:45 B:/wc1/test 4 barry 35 02-Apr-2018 20:01:45 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 20:01:45 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.12.log000644 000765 000024 00000074076 13461042336 023213 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T10:35:46.371054Z | test add file 1 2| r4 | barry | 2018-04-02T10:35:47.178306Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 11:35:48 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Text Last Updated: 02-Apr-2018 11:35:47 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 11:35:49 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 11:35:47 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 11:35:46 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 11:35:44 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 11:35:43 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 11:35:47 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 11:35:47 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder1 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T10:36:00.639488Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 11:35:48 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python35.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 11:36:06 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.9.log000644 000765 000024 00000001411 12564665666 023167 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.cmd000644 000765 000024 00000010624 14046474103 016244 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-05.cmd @rem test info2 with locked files @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-05 call :cmd_shell subst b: %CD%\testroot-05 call :cmd_shell cd /d b:\ call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-05 add trunk" call :cmd_pysvn mkdir file:///b:/repos/trunk/test -m "test-05 add test" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd b:\wc1\test echo Info: Setup - add files call :cmd_createfile file1.txt test add file 1 call :cmd_createfile file2.txt test add file 2 call :cmd_pysvn add file1.txt call :cmd_pysvn add file2.txt call :cmd_pysvn checkin -m "commit added files" echo Info: Setup - checkout wc2 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc2 echo Info: Test - status of unlocked files call :cmd_pysvn status --verbose b:\wc1 echo Info: Test - info2 of unlocked files call :cmd_pysvn info2 b:\wc1\test\file1.txt echo Info: Test - list of unlocked files call :cmd_pysvn list --verbose --fetch-locks b:\wc1\test\file1.txt call :cmd_pysvn list --verbose --fetch-locks b:\wc1\test echo Info: Test - lock unlocked file call :cmd_pysvn lock b:\wc1\test\file1.txt echo Info: Test - status of locked files call :cmd_pysvn status --verbose b:\wc1 echo Info: Test - info2 of locked files call :cmd_pysvn info2 b:\wc1\test\file1.txt echo Info: Test - list of locked files call :cmd_pysvn list --verbose --fetch-locks b:\wc1\test\file1.txt call :cmd_pysvn list --verbose --fetch-locks b:\wc1\test echo Info: Test - attempt to checkin over a locked file call :cmd_shell cd b:\wc2\test call :cmd_appendfile file1.txt Change to file 1 call :cmd_appendfile file2.txt Change to file 2 call :cmd_pysvn commit -m "change when file locked in other wc" . echo Info: Test - lock locked file call :cmd_pysvn lock b:\wc2\test\file1.txt echo Info: Test - lock --force locked file call :cmd_pysvn lock --force b:\wc2\test\file1.txt -m "Stealing lock" echo Info: Test - info2 of locked files call :cmd_pysvn info2 b:\wc2\test\file1.txt echo Info: Test - status of locked files call :cmd_pysvn status --verbose b:\wc2 echo Info: Test - list of locked files call :cmd_pysvn list --verbose --fetch-locks --recursive b:\wc2 echo Info: Test - commit with lock call :cmd_pysvn commit -m "change when file locked in this wc" . echo Info: Test - status of locked files call :cmd_pysvn status --verbose b:\wc2 echo Info: Test - list of locked files call :cmd_pysvn list --verbose --fetch-locks --recursive b:\wc2 echo Info: Test - unlock locked file call :cmd_pysvn unlock b:\wc2\test\file1.txt echo Info: Test - status of unlocked files call :cmd_pysvn status --verbose b:\wc2 echo Info: Test - list of unlocked files call :cmd_pysvn list --verbose --fetch-locks --recursive b:\wc2 echo Info: Test - status of locked files call :cmd_pysvn status --verbose b:\wc1 echo Info: Test - list of unlocked files call :cmd_pysvn list --verbose --fetch-locks --recursive b:\wc1 echo Info: Test - update with stolen lock call :cmd_pysvn update b:\wc1\test echo Info: Test - status of locked files call :cmd_pysvn status --verbose b:\wc1 echo Info: Test - info2 of URL call :cmd_pysvn info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt echo Info: Test - list of locked files call :cmd_pysvn list --verbose --fetch-locks --recursive b:\wc1 goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. echo Info: PYSVN CMD %* %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-11.cmd000644 000765 000024 00000004234 14046474103 016241 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-11.cmd for 1.10 commands @rem test vacuum @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.10.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-11 call :cmd_shell subst b: %CD%\testroot-11 call :cmd_shell cd /d b:\ call :cmd_shell mkdir tmp set TMPDIR=b:\tmp call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-11 add trunk" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd /d b:\wc1 echo Info: Setup - add files and folders call :cmd_pysvn mkdir folder1 call :cmd_pysvn mkdir folder2 call :cmd_createfile folder1\file-a.txt test add file 1 call :cmd_pysvn add folder1\file-a.txt call :cmd_createfile folder2\file-a.sh test add file 2 call :cmd_pysvn add folder2\file-a.sh call :cmd_createfile folder2\file-a.cmd test add file 3 call :cmd_pysvn add folder2\file-a.cmd call :cmd_pysvn checkin -m "commit added files" echo Info: test list no patterns call :cmd_pysvn list --recursive echo Info: test list 1 pattern call :cmd_pysvn list --recursive --search "*.txt" echo Info: test list 2 patterns call :cmd_pysvn list --recursive --search "*.sh" --search "*.txt" goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. 1>&2 echo Info: PYSVN CMD %* 1>&2 %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-01.sh000755 000765 000024 00000024043 14175474070 016120 0ustar00barrystaff000000 000000 #!/bin/bash # # test-01.sh # test the main commands that are in all versions # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-01 cmd cd testroot-01 TESTROOT=${WORKDIR}/Tests/testroot-01 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Testing - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-01 add trunk" cmd_pysvn mkdir file://${TESTROOT}/repos/trunk/test -m "test-01 add test" echo Info: Testing - ls cmd_pysvn ls file://${TESTROOT}/repos -v -R echo Info: Testing - checkout cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd ${PYTHON} ${WORKDIR}/Tests/find.py ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1/test echo Info: Testing - add echo test add file 1 >file1.txt echo test add file 2 >file2.txt echo test add file 3 >file3.txt echo test add file 4 >file4.txt echo test add file 5 >file5.txt echo test add file 6 >file6.txt mkdir folder1 echo test add file 7 >folder1/file7.txt mkdir folder1/folder2 echo test add file 8 >folder1/folder2/file8.txt mkdir folder3 echo test add file 9 >folder3/file9.txt mkdir folder3/folder4 echo test add file 10 >folder3/folder4/file10.txt cmd_pysvn add file1.txt cmd_pysvn add file2.txt cmd_pysvn add file3.txt cmd_pysvn add file4.txt cmd_pysvn add --force file5.txt cmd_pysvn add file6.txt cmd_pysvn add folder1 cmd_pysvn add --non-recursive folder3 cmd_pysvn checkin -m "commit added files" echo Info: Setup to test access to deleted files echo test mod file 6 >>file6.txt cmd_pysvn checkin -m "commit mod file" cmd_pysvn rm file6.txt cmd_pysvn checkin -m "commit delete file" echo Info: Testing - update - get a new wc that will update cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc2 echo Info: Testing - - checkin a mod from wc1 echo line 2 >>${TESTROOT}/wc1/test/file1.txt cmd_pysvn checkin -m "commit modified file" echo Info: Testing - update cmd_pysvn update ${TESTROOT}/wc2 echo Info: Testing - the rest in lexical order echo Info: Testing - annotate cmd_pysvn annotate ${TESTROOT}/wc2/test/file1.txt cmd_pysvn annotate -r 3:4 file://${TESTROOT}/repos/trunk/test/file6.txt echo Info: Testing - cat cmd_pysvn cat -r head file://${TESTROOT}/repos/trunk/test/file1.txt cmd_pysvn cat -r 4 file://${TESTROOT}/repos/trunk/test/file6.txt echo Info: Testing - cleanup cmd_pysvn cleanup ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1 cmd_pysvn cleanup . cmd cd ${TESTROOT}/wc1/test echo Info: Testing - copy cmd_pysvn mkdir file://${TESTROOT}/repos/tags -m "test-01 add tags" echo tag the trunk >msg.tmp cmd_pysvn copy file://${TESTROOT}/repos/trunk file://${TESTROOT}/repos/tags/version1 >${TESTROOT}/wc2/test/file1b.txt cmd_pysvn diff ${TESTROOT}/wc2 echo Info: Testing - diff none utf-8 echo "Non UTF-8 À is 0xc0" | iconv --from-code=utf-8 --to-code=iso-8859-1 >>${TESTROOT}/wc2/test/file1b.txt cmd_pysvn diff --return-bytes ${TESTROOT}/wc2 echo Info: Testing - export cmd_pysvn export file://${TESTROOT}/repos/trunk/test ${TESTROOT}/export1.native cmd_pysvn export --native-eol CR file://${TESTROOT}/repos/trunk/test ${TESTROOT}/export1.cr cmd_pysvn export --native-eol LF file://${TESTROOT}/repos/trunk/test ${TESTROOT}/export1.lf cmd_pysvn export --native-eol CRLF file://${TESTROOT}/repos/trunk/test ${TESTROOT}/export1.crlf ${PYTHON} ${WORKDIR}/Tests/find.py ${TESTROOT}/export1.native ${PYTHON} ${WORKDIR}/Tests/find.py ${TESTROOT}/export1.cr ${PYTHON} ${WORKDIR}/Tests/find.py ${TESTROOT}/export1.lf ${PYTHON} ${WORKDIR}/Tests/find.py ${TESTROOT}/export1.crlf echo Info: Testing - info cmd_pysvn info ${TESTROOT}/wc2/test cmd_pysvn info ${TESTROOT}/wc2/test/file1.txt echo Info: Testing - log cmd_pysvn log ${TESTROOT}/wc2 echo Info: Testing - ls cmd_pysvn ls file://${TESTROOT}/repos/trunk/test cmd_pysvn ls -v file://${TESTROOT}/repos/trunk/test cmd_pysvn ls ${TESTROOT}/wc2/test cmd_pysvn ls -v ${TESTROOT}/wc2/test echo Info: Testing - merge - done below echo Info: Testing - mkdir - done above echo Info: Testing - move echo move url test >msg.tmp cmd_pysvn move file://${TESTROOT}/repos/trunk/test/file2.txt file://${TESTROOT}/repos/trunk/test/file2b.txt >${TESTROOT}/wc1/test/file4.txt cmd_pysvn checkin ${TESTROOT}/wc1 -m "change wc1 for status -u to detect" cmd_pysvn status ${TESTROOT}/wc2 cmd_pysvn status --verbose ${TESTROOT}/wc2 cmd_pysvn status --show-updates ${TESTROOT}/wc2 cmd_pysvn status --show-updates --verbose ${TESTROOT}/wc2 cmd_pysvn update cmd_pysvn status --show-updates ${TESTROOT}/wc2 cmd_pysvn status --show-updates --verbose ${TESTROOT}/wc2 cmd_pysvn checkin ${TESTROOT}/wc2 -m "prop change" echo Info: Testing - propdel cd ${TESTROOT}/wc2/test cmd_pysvn propset test:prop1 del_me file4.txt cmd_pysvn proplist -v file4.txt cmd_pysvn propdel test:prop1 file4.txt cmd_pysvn proplist -v file4.txt echo Info: Testing - propget cmd_pysvn propset svn:eol-style native file4.txt cmd_pysvn propget svn:eol-style file4.txt cmd_pysvn propget unknown file4.txt echo Info: Testing - proplist - see above echo Info: Testing - propset cd ${TESTROOT}/wc2/test cmd_pysvn proplist -v file4.txt cmd_pysvn propset svn:eol-style native file4.txt cmd_pysvn proplist -v file4.txt echo Info: Testing - remove cd ${TESTROOT}/wc2/test cmd_pysvn remove file5.txt cmd_pysvn status echo Info: Testing - resolved echo conflict in file4 yes >>${TESTROOT}/wc1/test/file4.txt echo conflict in file4 no >>${TESTROOT}/wc2/test/file4.txt cmd_pysvn checkin ${TESTROOT}/wc1/test -m "make a conflict part 1" cmd_pysvn update ${TESTROOT}/wc2/test cmd_pysvn status cmd cp ${TESTROOT}/wc2/test/file4.txt.mine ${TESTROOT}/wc2/test/file4.txt cmd_pysvn resolved ${TESTROOT}/wc2/test/file4.txt cmd_pysvn checkin ${TESTROOT}/wc2/test/file4.txt -m "resolve a confict part 2" echo Info: Testing - revert cmd_pysvn revert file5.txt cmd_pysvn status echo Info: Testing - revproplist cmd_pysvn revproplist file://${TESTROOT}/repos/trunk echo Info: Testing - revpropget cmd_pysvn revpropget svn:log file://${TESTROOT}/repos/trunk cmd_pysvn revpropget no_such_prop file://${TESTROOT}/repos/trunk echo Info: Testing - revpropset cmd_pysvn revpropset svn:log "Hello world" file://${TESTROOT}/repos/trunk echo Info: Testing - revpropdel cmd_pysvn revpropdel svn:log file://${TESTROOT}/repos/trunk echo Info: Testing - status - see above echo Info: Testing - relocate cmd mkdir ${TESTROOT}/root cmd mv ${TESTROOT}/repos ${TESTROOT}/root cmd_pysvn info ${TESTROOT}/wc1 cmd_pysvn relocate file://${TESTROOT}/repos/trunk file://${TESTROOT}/root/repos/trunk ${TESTROOT}/wc1 cmd_pysvn info ${TESTROOT}/wc1 cmd_pysvn info ${TESTROOT}/wc2 cmd_pysvn relocate file://${TESTROOT}/repos/trunk file://${TESTROOT}/root/repos/trunk ${TESTROOT}/wc2 cmd_pysvn info ${TESTROOT}/wc2 echo Info: Testing - switch cmd_pysvn info ${TESTROOT}/wc2 cmd_pysvn switch ${TESTROOT}/wc2 file://${TESTROOT}/root/repos/tags/version1 cmd_pysvn info ${TESTROOT}/wc2 echo Info: Testing - update - see above echo Info: Testing - merge cmd_pysvn checkout file://${TESTROOT}/root/repos/trunk ${TESTROOT}/wc3 cmd cd ${TESTROOT}/wc3/test echo test add file merge 1 >file-merge-1.txt echo test add file merge 2 >file-merge-2.txt cmd_pysvn add file-merge-1.txt cmd_pysvn add file-merge-2.txt cmd_pysvn commit -m "add test merge files" . echo make a branch >msg.tmp cmd_pysvn copy file://${TESTROOT}/root/repos/trunk/test file://${TESTROOT}/root/repos/trunk/test-branch file-merge-3.txt cmd_pysvn add file-merge-3.txt cmd_pysvn rm file-merge-1.txt echo modify merge 2 >>file-merge-2.txt cmd_pysvn commit -m "change test merge files" . cmd_pysvn merge --dry-run --revision 16:17 file://${TESTROOT}/root/repos/trunk/test ${TESTROOT}/wc3/test-branch cmd_pysvn merge --revision 16:17 file://${TESTROOT}/root/repos/trunk/test ${TESTROOT}/wc3/test-branch cmd_pysvn status ${TESTROOT}/wc3/test-branch cmd_pysvn diff ${TESTROOT}/wc3/test-branch cmd ${PYTHON} ${WORKDIR}/Tests/test_01_set_get_tests.py ${TESTROOT}/configdir echo Info: Testing - import echo test import file 1 >"${TMPDIR}/import1.txt" echo test import file 2 >"${TMPDIR}/import 2.txt" cmd_pysvn mkdir "file://${TESTROOT}/root/repos/trunk/test/import" -m "test-01 add import" cmd_pysvn import --message "no spaces" "${TMPDIR}/import1.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import-file1.txt" cmd_pysvn import --message "space in url" "${TMPDIR}/import1.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import file1A.txt" cmd_pysvn import --message "%20 in url" "${TMPDIR}/import1.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import%20file1B.txt" cmd_pysvn import --message "space in file, none in url" "${TMPDIR}/import 2.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import-file2.txt" cmd_pysvn import --message "space in file, space in url" "${TMPDIR}/import 2.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import file2A.txt" cmd_pysvn import --message "space in file, %20 in url" "${TMPDIR}/import 2.txt" "file://${TESTROOT}/root/repos/trunk/test/import/import%20file2B.txt" cmd_pysvn update ${TESTROOT}/wc1 cmd_pysvn log --limit 6 --verbose ${TESTROOT}/wc1 pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.12.log000644 000765 000024 00000013566 13461042336 023237 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.6.log000644 000765 000024 00000043565 12164337446 023170 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T17:37:25.566665Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T17:37:25.609987Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T17:37:26.169993Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T17:37:26.220972Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T17:37:27.128077Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T17:37:27.177397Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T17:37:28.127076Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T17:37:28.177861Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T17:37:30.073400Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 7 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T17:37:30.119322Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test_01_set_get_tests.py000644 000765 000024 00000004022 12700743267 021143 0ustar00barrystaff000000 000000 print( 'Info: test_01_set_get_tests start' ) import sys print( 'Info: test_01_set_get_tests import pysvn' ) import pysvn print( 'Info: test_01_set_get_tests pysvn.Client( %s )' % (sys.argv[1],) ) c = pysvn.Client( sys.argv[1] ) print( 'Info: Initial values' ) print( 'Info: get_auth_cache() => %r' % c.get_auth_cache() ) print( 'Info: get_auto_props() => %r' % c.get_auto_props() ) print( 'Info: get_default_password() => %r' % c.get_default_password() ) print( 'Info: get_default_username() => %r' % c.get_default_username() ) print( 'Info: get_interactive() => %r' % c.get_interactive() ) print( 'Info: get_store_passwords() => %r' % c.get_store_passwords() ) print( 'Info: Change values 1' ) c.set_auth_cache( False ) c.set_auto_props( False ) c.set_default_password( "thepass" ) c.set_default_username( "auser" ) c.set_interactive( False ) c.set_store_passwords( False ) print( 'Info: Changed values 1' ) print( 'Info: get_auth_cache() => %r' % c.get_auth_cache() ) print( 'Info: get_auto_props() => %r' % c.get_auto_props() ) print( 'Info: get_default_password() => %r' % c.get_default_password() ) print( 'Info: get_default_username() => %r' % c.get_default_username() ) print( 'Info: get_interactive() => %r' % c.get_interactive() ) print( 'Info: get_store_passwords() => %r' % c.get_store_passwords() ) print( 'Info: Change values 2' ) c.set_auth_cache( True ) c.set_auto_props( True ) c.set_default_password( None ) c.set_default_username( None ) c.set_interactive( True ) c.set_store_passwords( True ) print( 'Info: Changed values 2' ) print( 'Info: get_auth_cache() => %r' % c.get_auth_cache() ) print( 'Info: get_auto_props() => %r' % c.get_auto_props() ) print( 'Info: get_default_password() => %r' % c.get_default_password() ) print( 'Info: get_default_username() => %r' % c.get_default_username() ) print( 'Info: get_interactive() => %r' % c.get_interactive() ) print( 'Info: get_store_passwords() => %r' % c.get_store_passwords() ) print( 'Info: test_01_set_get_tests dealloc Client()' ) del c print( 'Info: test_01_set_get_tests done' ) pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.8.log000644 000765 000024 00000042667 13260161237 023165 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 0ea454a8-c2e1-4d8e-8713-65e34895df5c Last changed author: barry Last Changed Date: 01-Apr-2018 14:44:25 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 14:44:25 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 0ea454a8-c2e1-4d8e-8713-65e34895df5c Last changed author: barry Last Changed Date: 01-Apr-2018 14:44:25 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 14:44:27 Lock Token: opaquelocktoken:66652803-1f53-4a4b-9981-ca5b9c3f67da Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 14:44:25 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 14:44:27 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 14:44:27 3 barry 16 01-Apr-2018 14:44:25 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Commit failed (details follow): Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 0ea454a8-c2e1-4d8e-8713-65e34895df5c Last changed author: barry Last Changed Date: 01-Apr-2018 14:44:25 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 14:44:29 Lock Token: opaquelocktoken:8384ce3d-d9de-4e88-a0de-c5ce92f86fab Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 14:44:26 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 14:44:29 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 0ea454a8-c2e1-4d8e-8713-65e34895df5c Last changed author: barry Last Changed Date: 01-Apr-2018 14:44:29 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 14:44:29 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.11.log000644 000765 000024 00000033642 13404261102 023175 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-04.win32.known_good-py2-svn1.10.log000644 000765 000024 00000033642 13260120165 023177 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win64\python.exe Username: barry C:\Users\barry\wc\svn\PySVN\Extension\Tests > setlocal C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client C:\Users\barry\wc\svn\PySVN\Extension\Tests > set PYSVN=c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir C:\Users\barry\wc\svn\PySVN\Extension\Tests > mkdir testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-04 C:\Users\barry\wc\svn\PySVN\Extension\Tests > cd /d B:\ B:\ > svnadmin create b:\repos B:\ > rem mkdir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . B:\ > rem Install hooks B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit %* >>b:\pre_test_1.output 1>>b:\repos\hooks\pre-commit.cmd B:\ > echo echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > echo set PYTHONPATH=C:\Users\barry\wc\svn\PySVN\Extension\Source;C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client 1>>b:\repos\hooks\post-commit.cmd B:\ > echo c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit %* is_revision >>b:\post_test_1.output 1>>b:\repos\hooks\post-commit.cmd B:\ > rem Add one dir B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" commit_finalizing . B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 2-2 Info: pre-commit test 1 Info: Transaction( B:\repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:40.726001Z svn:log: pre-commit test 1 svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 3 2-2 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.116770Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Add two files B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir co file:///b:/repos/trunk/test b:\wc A B:/wc/a U B:/wc update_started B:/wc Checked out revision 3 B:\ > echo file1 ROOT 1>b:\wc\file1.txt B:\ > echo file1 A 1>b:\wc\a\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\file1.txt A B:/wc/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir add b:\wc\a\file1.txt A B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Add two files" b:\wc A B:/wc/a/file1.txt A B:/wc/file1.txt commit_finalizing . Revision 4 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 3-3 Info: pre-commit test 1 Info: Transaction( B:\repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.460548Z svn:log: Add two files svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 4 3-3 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:41.866829Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A \r\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Mod one file Mod one prop B:\ > echo file1 ROOT ln 2 1>b:\wc\file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir propset svn:eol-style native b:\wc\a\file1.txt property_added B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Mod one file Mod one prop" b:\wc M B:/wc/a/file1.txt M B:/wc/file1.txt commit_finalizing . Revision 5 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 4-4 Info: pre-commit test 1 Info: Transaction( B:\repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.179359Z svn:log: Mod one file Mod one prop svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 5 4-4 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.585645Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2 \r\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=1, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A \n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2 \r\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > rem Delete one file B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir rm b:\wc\a\file1.txt D B:/wc/a/file1.txt B:\ > c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir checkin -m "Delete one file" b:\wc D B:/wc/a/file1.txt commit_finalizing . Revision 6 B:\ > rem pre_test_1.output start ---------------------------------------- B:\ > type b:\pre_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py pre-commit B:\repos 5-5 Info: pre-commit test 1 Info: Transaction( B:\repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:42.898158Z svn:log: Delete one file svn:txn-client-compat-version: 1.9.3 svn:txn-user-agent: SVN/1.9.3 (x64-microsoft-windows) ra_local Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem pre_test_1.output end ------------------------------------------ B:\ > rem post_test_1.output start ---------------------------------------- B:\ > type b:\post_test_1.output c:\python27.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_04_commit_hook_test_1.py post-commit B:\repos 6 5-5 is_revision Info: post-commit test 1 Info: Transaction( B:\repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2016-04-27T19:31:43.241949Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= B:\ > rem post_test_1.output end ------------------------------------------ B:\ > endlocal pysvn-1.9.22/Tests/test-05.unix.known_good-py3-svn1.9.log000644 000765 000024 00000043320 13260200645 023146 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: mkdir testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests Info: Command: cd testroot-05 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.02.01 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/configdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk -m test-05 add trunk commit_finalizing . Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test -m test-05 add test commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 Checked out revision 2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05 Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Setup - add files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: add file2.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 900935e6-e0df-4358-839a-e5d2d7305556 Last changed author: barry Last Changed Date: 01-Apr-2018 16:38:50 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 01-Apr-2018 16:38:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - lock unlocked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt -m lock comment test 05 locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 900935e6-e0df-4358-839a-e5d2d7305556 Last changed author: barry Last Changed Date: 01-Apr-2018 16:38:50 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 16:38:52 Lock Token: opaquelocktoken:e90bb622-d755-4845-acaf-d085a4e92dca Lock Comment: lock comment test 05 Schedule: normal Text Last Updated: 01-Apr-2018 16:38:50 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 16:38:52 Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: pysvn command: list --verbose --fetch-locks /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry - 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt Lock owner: barry Lock comment: lock comment test 05 Lock created: 2018-04-01 16:38:52 3 barry 16 01-Apr-2018 16:38:50 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Info: Command: cd /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in other wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt failed_locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Commit failed (details follow): File '/Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt' is locked in another working copy Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt failed_lock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - lock --force locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: lock --force /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt -m Stealing lock locked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - info2 of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Path: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 3 Repository UUID: 900935e6-e0df-4358-839a-e5d2d7305556 Last changed author: barry Last Changed Date: 01-Apr-2018 16:38:50 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 01-Apr-2018 16:38:54 Lock Token: opaquelocktoken:70ae903a-df2b-4f83-83d6-04d03e7877d8 Lock Comment: Stealing lock Schedule: normal Text Last Updated: 01-Apr-2018 16:38:51 Checksum: ae0e5a70bbd1dcadbb4ac8ffe321bdb7b7682b72 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test M K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - commit with lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: commit -m change when file locked in this wc . M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test K 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-01 16:38:54 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - unlock locked file Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: unlock /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt unlocked /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt Info: Test - status of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry - 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2 4 barry 0 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file1.txt 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test/file2.txt Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test K 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 3 3 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - list of unlocked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - update with stolen lock Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: update /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test Updated to revision 4 Info: Test - status of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: status --verbose /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 2 2 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 4 barry /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt Info: Test - info2 of URL Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: info2 --revision HEAD file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Path: file1.txt Url: file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/repos/trunk/test/file1.txt Revision: 4 Repository UUID: 900935e6-e0df-4358-839a-e5d2d7305556 Last changed author: barry Last Changed Date: 01-Apr-2018 16:38:54 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: CWD: /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc2/test Info: pysvn command: list --verbose --fetch-locks --recursive /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry - 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1 4 barry 0 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file1.txt 4 barry 33 01-Apr-2018 16:38:54 /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-05/wc1/test/file2.txt pysvn-1.9.22/Tests/test-04.unix.known_good-py2-svn1.7.log000644 000765 000024 00000043675 12164346274 023172 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Username: barry Info: Command: mkdir testroot-04 Info: Command: cd testroot-04 Info: Command: mkdir tmp Info: Command: svnadmin create /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos Info: Testing - mkdir Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk -m test-04 add trunk Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test -m test-04 add test Info: Install hooks Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir mkdir file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test/a -m pre-commit test 1 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 2-2 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 2-2) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T18:34:59.699285Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T18:34:59.790538Z svn:log: pre-commit test 1 Info: changed() ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= Info: post_test_1.output end ------------------------------------- Info: Add two files Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkout file:///Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos/trunk/test /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a U /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc update_started /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc Checked out revision 3 Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir add /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Add two files /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 4 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 3-3 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 3-3) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T18:35:00.173859Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T18:35:00.225436Z svn:log: Add two files Info: changed() ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 A\n' trunk/test/file1.txt: action='A', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Mod one file Mod one prop Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir propset svn:eol-style native /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt property_added /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Mod one file Mod one prop /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt M /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt Revision 5 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 4-4 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 4-4) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T18:35:01.132494Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T18:35:01.182200Z svn:log: Mod one file Mod one prop Info: changed() ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='R', kind=, text_mod=0, prop_mod=1 copyfrom_rev=0 copyfrom_path=None svn:eol-style: native contents: 'file1 A\n' trunk/test/file1.txt: action='R', kind=, text_mod=1, prop_mod=0 copyfrom_rev=0 copyfrom_path=None contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/a/file1.txt: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Delete one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir rm /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Delete one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc D /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/a/file1.txt Revision 6 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 5-5 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 5-5) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T18:35:02.133968Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T18:35:02.176682Z svn:log: Delete one file Info: changed() ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 Info: changed( copy_info=True ) ... trunk/test/a/file1.txt: action='D', kind=, text_mod=0, prop_mod=0 copyfrom_rev=0 copyfrom_path=None Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= Info: post_test_1.output end ------------------------------------- Info: Copy one file Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir cp /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1.txt /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Info: Command: /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.01.00 --config-dir /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/configdir checkin -m Copy one file /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc A /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/wc/file1copy.txt Revision 7 Info: pre_test_1.output start ------------------------------------ /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py pre-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 6-6 Info: pre-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 6-6) ... Info: revproplist() ... svn:author: barry svn:check-locks: true svn:date: 2013-07-01T18:35:04.076776Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: pre_test_1.output end -------------------------------------- Info: post_test_1.output start ----------------------------------- /Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python /Users/barry/wc/svn/pysvn/Extension/Tests/test_04_commit_hook_test_1.py post-commit /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos 7 is_revision Info: post-commit test 1 Info: Transaction( /Users/barry/wc/svn/pysvn/Extension/Tests/testroot-04/repos, 7, is_revision=True) ... Info: revproplist() ... svn:author: barry svn:date: 2013-07-01T18:35:04.121631Z svn:log: Copy one file Info: changed() ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 contents: 'file1 ROOT ln 2\n' Info: changed( copy_info=True ) ... trunk/test/file1copy.txt: action='A', kind=, text_mod=0, prop_mod=0 copyfrom_rev=5 copyfrom_path=u'/trunk/test/file1.txt' contents: 'file1 ROOT ln 2\n' Info: list() ... /trunk: kind= /trunk/test: kind= /trunk/test/a: kind= /trunk/test/file1.txt: kind= /trunk/test/file1copy.txt: kind= Info: post_test_1.output end ------------------------------------- pysvn-1.9.22/Tests/test-10.unix.known_good-py3-svn1.14.log000644 000765 000024 00000010572 13660472625 023236 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn-next/Extension PYTHON: /usr/local/bin/python3.5 Username: barry Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: mkdir testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests Info: Command: cd testroot-10 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: mkdir tmp Info: PYSVN command /usr/local/bin/python3.5 /Users/barry/wc/svn/pysvn-next/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.09.00 --config-dir /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/configdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: svnadmin create /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos Info: Setup - mkdir Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: mkdir file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk -m test-10 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: pysvn command: checkout file:///Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/repos/trunk /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 update_started /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Checked out revision 1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10 Info: Command: cd /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: Setup - add files and folders Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: mkdir folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: propset svn:ignore *~ folder1 property_added /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: add folder1/file-a.txt A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: checkin -m commit added files A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1 A /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt commit_finalizing . Revision 2 Info: vacuum no removes Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum Info: vacuum remove ignored Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-a.txt~ ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-ignored-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt ? folder1/file-b.txt Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: vacuum --remove-unversioned-items D /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1/folder1/file-b.txt Info: check final state Info: CWD: /Users/barry/wc/svn/pysvn-next/Extension/Tests/testroot-10/wc1 Info: pysvn command: status2 --verbose --no-ignore . 1 1 barry . 2 2 barry folder1 2 2 barry folder1/file-a.txt pysvn-1.9.22/Tests/test-08.unix.known_good-py2-svn1.13.log000644 000765 000024 00000013566 13566476551 023260 0ustar00barrystaff000000 000000 WorkDir: /home/barry/wc/svn/pysvn-trunk/Extension PYTHON: /bin/python Username: barry Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: mkdir testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests Info: Command: cd testroot-08 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: mkdir tmp Info: PYSVN command /bin/python /home/barry/wc/svn/pysvn-trunk/Extension/Examples/Client/svn_cmd.py --pysvn-testing 01.05.00 --config-dir /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/configdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: svnadmin create /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos Info: Setup - mkdir Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: mkdir file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk -m test-08 add trunk commit_finalizing . Info: Setup - checkout wc1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Checked out revision 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Setup - add files and folders Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: mkdir folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: add folder2/sub2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkin -m commit added files A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder2/sub2/file-b.txt commit_finalizing . Revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: diff folder1/file-a.txt Index: folder1/file-a.txt =================================================================== --- folder1/file-a.txt (revision 2) +++ folder1/file-a.txt (working copy) @@ -1 +1,2 @@ test add file 1 +test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: pysvn command: checkout file:///home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/repos/trunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/file-b.txt A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2 A /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder2/sub2/file-b.txt U /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 update_started /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Checked out revision 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1 Info: Command: cd /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: pysvn command: patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/diff-1.patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 --no-remove-tempfiles patch /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt patch_applied_hunk /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: cat folder1/file-a.txt test add file 1 test add line 2 Info: CWD: /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2 Info: Command: diff -u /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc1/folder1/file-a.txt /home/barry/wc/svn/pysvn-trunk/Extension/Tests/testroot-08/wc2/folder1/file-a.txt pysvn-1.9.22/Tests/test-11.sh000755 000765 000024 00000003171 13262407737 016122 0ustar00barrystaff000000 000000 #!/bin/bash # # test-11.sh - 1.1- commands # test list --search # # need to get rid of any symbolic links in the WORKDIR export WORKDIR=$( ${PYTHON} -c 'import os;os.chdir("..");print( os.getcwd() )' ) cd ${WORKDIR}/Tests echo WorkDir: ${WORKDIR} echo PYTHON: ${PYTHON} echo Username: $(id -u -n) cmd () { echo Info: CWD: $(pwd) echo Info: Command: $* "$@" } cmd_pysvn () { echo Info: CWD: $(pwd) echo Info: pysvn command: $* ${PYSVN} "$@" } cmd mkdir testroot-11 cmd cd testroot-11 TESTROOT=${WORKDIR}/Tests/testroot-11 cmd mkdir tmp export TMPDIR=${TESTROOT}/tmp export PYTHONPATH=${WORKDIR}/Source:${WORKDIR}/Examples/Client export PYSVN="${PYTHON} ${WORKDIR}/Examples/Client/svn_cmd.py --pysvn-testing 01.10.00 --config-dir ${TESTROOT}/configdir" echo Info: PYSVN command ${PYSVN} cmd svnadmin create ${TESTROOT}/repos echo Info: Setup - mkdir cmd_pysvn mkdir file://${TESTROOT}/repos/trunk -m "test-11 add trunk" echo Info: Setup - checkout wc1 cmd_pysvn checkout file://${TESTROOT}/repos/trunk ${TESTROOT}/wc1 cmd cd ${TESTROOT}/wc1 echo Info: Setup - add files and folders cmd_pysvn mkdir folder1 cmd_pysvn mkdir folder2 echo test add file 1 >folder1/file-a.txt cmd_pysvn add folder1/file-a.txt echo test add file 2 >folder2/file-a.sh cmd_pysvn add folder2/file-a.sh echo test add file 3 >folder2/file-a.cmd cmd_pysvn add folder2/file-a.cmd cmd_pysvn checkin -m "commit added files" echo test list no patterns cmd_pysvn list --recursive echo test list 1 pattern cmd_pysvn list --recursive --search '*.txt' echo test list 2 patterns cmd_pysvn list --recursive --search '*.sh' --search '*.txt' true pysvn-1.9.22/Tests/test-10.cmd000644 000765 000024 00000004312 14046474103 016235 0ustar00barrystaff000000 000000 @echo off @prompt $P$S$G @rem @rem test-10.cmd for 1.9 commands @rem test vacuum @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir echo Info: PYSVN CMD %PYSVN% call :cmd_shell mkdir testroot-10 call :cmd_shell subst b: %CD%\testroot-10 call :cmd_shell cd /d b:\ call :cmd_shell mkdir tmp set TMPDIR=b:\tmp call :cmd_shell %SVN_BIN%\svnadmin create b:\repos echo Info: Setup - mkdir call :cmd_pysvn mkdir file:///b:/repos/trunk -m "test-10 add trunk" echo Info: Setup - checkout wc1 call :cmd_pysvn checkout file:///b:/repos/trunk b:\wc1 call :cmd_shell cd /d b:\wc1 echo Info: Setup - add files and folders call :cmd_pysvn mkdir folder1 call :cmd_pysvn propset svn:ignore "*~" folder1 call :cmd_createfile folder1\file-a.txt test add file 1 call :cmd_pysvn add folder1\file-a.txt call :cmd_pysvn checkin -m "commit added files" call :cmd_createfile folder1/file-a.txt~ test add file 1 call :cmd_createfile folder1/file-b.txt test add file 1 echo Info: vacuum no removes call :cmd_pysvn status2 --verbose --no-ignore . call :cmd_pysvn vacuum echo Info: vacuum remove ignored call :cmd_pysvn status2 --verbose --no-ignore . call :cmd_pysvn vacuum --remove-ignored-items echo Info: vacuum remove versioned call :cmd_pysvn status2 --verbose --no-ignore . call :cmd_pysvn vacuum --remove-unversioned-items echo Info: check final state call :cmd_pysvn status2 --verbose --no-ignore . goto :eof endlocal :cmd_shell echo. echo Info: CMD %* %* goto :eof :cmd_pysvn echo. 1>&2 echo Info: PYSVN CMD %* 1>&2 %PYSVN% %* goto :eof :cmd_createfile set FILENAME=%1 shift echo Info: Create File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >%FILENAME% goto :eof :cmd_appendfile set FILENAME=%1 shift echo Info: Append File %FILENAME% - %1 %2 %3 %4 %5 %6 %7 %8 %9 call :cmd__echo %1 %2 %3 %4 %5 %6 %7 %8 %9 >>%FILENAME% goto :eof :cmd__echo echo %* goto :eof pysvn-1.9.22/Tests/test-04.cmd000644 000765 000024 00000006450 14046474103 016245 0ustar00barrystaff000000 000000 @prompt $P$S$G$S @rem @rem test-04.cmd @rem test Tranaction object @rem @echo WorkDir: %BUILDER_TOP_DIR% @echo PYTHON: %PYTHON% @echo Username: %USERNAME% @echo SVN_BIN: %SVN_BIN% setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source;%BUILDER_TOP_DIR%\Examples\Client set PYSVN=%PYTHON% %BUILDER_TOP_DIR%\Examples\Client\svn_cmd.py --pysvn-testing 01.02.01 --config-dir b:\configdir mkdir testroot-04 subst b: %CD%\testroot-04 cd /d B:\ %SVN_BIN%\svnadmin create b:\repos rem mkdir %PYSVN% mkdir file:///b:/repos/trunk -m "test-01 add trunk" %PYSVN% mkdir file:///b:/repos/trunk/test -m "test-01 add test" rem Install hooks echo echo %PYTHON% %BUILDER_TOP_DIR%\Tests\test_04_commit_hook_test_1.py pre-commit %%* ^>b:\pre_test_1.output >>b:\repos\hooks\pre-commit.cmd echo set PYTHONPATH=%PYTHONPATH% >>b:\repos\hooks\pre-commit.cmd echo %PYTHON% %BUILDER_TOP_DIR%\Tests\test_04_commit_hook_test_1.py pre-commit %%* ^>^>b:\pre_test_1.output >>b:\repos\hooks\pre-commit.cmd echo echo %PYTHON% %BUILDER_TOP_DIR%\Tests\test_04_commit_hook_test_1.py post-commit %%* is_revision ^>b:\post_test_1.output >>b:\repos\hooks\post-commit.cmd echo set PYTHONPATH=%PYTHONPATH% >>b:\repos\hooks\post-commit.cmd echo %PYTHON% %BUILDER_TOP_DIR%\Tests\test_04_commit_hook_test_1.py post-commit %%* is_revision ^>^>b:\post_test_1.output >>b:\repos\hooks\post-commit.cmd rem Add one dir %PYSVN% mkdir file:///b:/repos/trunk/test/a -m "pre-commit test 1" rem pre_test_1.output start ---------------------------------------- type b:\pre_test_1.output rem pre_test_1.output end ------------------------------------------ rem post_test_1.output start ---------------------------------------- type b:\post_test_1.output rem post_test_1.output end ------------------------------------------ rem Add two files %PYSVN% co file:///b:/repos/trunk/test b:\wc echo file1 ROOT >b:\wc\file1.txt echo file1 A >b:\wc\a\file1.txt %PYSVN% add b:\wc\file1.txt %PYSVN% add b:\wc\a\file1.txt %PYSVN% checkin -m "Add two files" b:\wc rem pre_test_1.output start ---------------------------------------- type b:\pre_test_1.output rem pre_test_1.output end ------------------------------------------ rem post_test_1.output start ---------------------------------------- type b:\post_test_1.output rem post_test_1.output end ------------------------------------------ rem Mod one file Mod one prop echo file1 ROOT ln 2 >b:\wc\file1.txt %PYSVN% propset svn:eol-style native b:\wc\a\file1.txt %PYSVN% checkin -m "Mod one file Mod one prop" b:\wc rem pre_test_1.output start ---------------------------------------- type b:\pre_test_1.output rem pre_test_1.output end ------------------------------------------ rem post_test_1.output start ---------------------------------------- type b:\post_test_1.output rem post_test_1.output end ------------------------------------------ rem Delete one file %PYSVN% rm b:\wc\a\file1.txt %PYSVN% checkin -m "Delete one file" b:\wc rem pre_test_1.output start ---------------------------------------- type b:\pre_test_1.output rem pre_test_1.output end ------------------------------------------ rem post_test_1.output start ---------------------------------------- type b:\post_test_1.output rem post_test_1.output end ------------------------------------------ endlocal pysvn-1.9.22/Tests/test-01.win32.known_good-py3-svn1.13.log000644 000765 000024 00000074076 13566476551 023234 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.01.00 --config-dir b:\configdir Info: CMD mkdir testroot-01 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-01 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Test - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-01 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-01 add test" commit_finalizing . Info: Test - ls Info: PYSVN CMD ls file:///b:/repos -v -R 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk 2 barry - 02-Apr-2018 11:35:44 file:///B:/repos/trunk/test Info: Test - checkout Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD dir b:\wc1 /s /b /a-h b:\wc1\test b:\wc1\.svn\entries b:\wc1\.svn\format b:\wc1\.svn\pristine b:\wc1\.svn\tmp b:\wc1\.svn\wc.db b:\wc1\.svn\wc.db-journal Info: CMD cd /d b:\wc1\test Info: Test - add Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: Create File file3.txt - test add file 3 Info: Create File file4.txt - test add file 4 Info: Create File file5.txt - test add file 5 Info: CMD mkdir folder1 Info: Create File folder1\file7.txt - test add file 7 Info: CMD mkdir folder1\folder2 Info: Create File folder1\folder2\file8.txt - test add file 8 Info: CMD mkdir folder3 Info: Create File folder3\file9.txt - test add file 9 Info: CMD mkdir folder3\folder4 Info: Create File folder3\folder4\file10.txt - test add file 10 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD add file3.txt A B:/wc1/test/file3.txt Info: PYSVN CMD add file4.txt A B:/wc1/test/file4.txt Info: PYSVN CMD add --force file5.txt A B:/wc1/test/file5.txt Info: PYSVN CMD add folder1 A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt Info: PYSVN CMD add --non-recursive folder3 A B:/wc1/test/folder3 Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt A B:/wc1/test/file3.txt A B:/wc1/test/file4.txt A B:/wc1/test/file5.txt A B:/wc1/test/folder1 A B:/wc1/test/folder1/file7.txt A B:/wc1/test/folder1/folder2 A B:/wc1/test/folder1/folder2/file8.txt A B:/wc1/test/folder3 commit_finalizing . Revision 3 Info: Test - update - get a new wc that will update Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt A B:/wc2/test/file4.txt A B:/wc2/test/file5.txt A B:/wc2/test/folder1 A B:/wc2/test/folder1/file7.txt A B:/wc2/test/folder1/folder2 A B:/wc2/test/folder1/folder2/file8.txt A B:/wc2/test/folder3 U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - - checkin a mod from wc1 Info: Append File b:\wc1\test\file1.txt - line 2 Info: PYSVN CMD checkin -m "commit modified file" M B:/wc1/test/file1.txt commit_finalizing . Revision 4 Info: PYSVN CMD checkin -m "commit modified file" Nothing to commit Info: Test - update Info: PYSVN CMD update b:\wc2 U B:/wc2 U B:/wc2/test U B:/wc2/test/file1.txt update_started B:/wc2 Updated to revision 4 Info: Test - the rest in lexical order Info: Test - annotate Info: PYSVN CMD annotate b:\wc2\test\file1.txt A /trunk/test/file1.txt A /trunk/test/file1.txt 1| r3 | barry | 2018-04-02T10:35:46.371054Z | test add file 1 2| r4 | barry | 2018-04-02T10:35:47.178306Z | line 2 Info: Test - cat Info: PYSVN CMD cat -r head file:///b:/repos/trunk/test/file1.txt test add file 1 line 2 Info: Test - cleanup Info: Test - copy Info: PYSVN CMD mkdir file:///b:/repos/tags -m "test-01 add tags" commit_finalizing . Info: Create File msg.tmp - tag the trunk Info: PYSVN CMD copy file:///b:/repos/trunk file:///b:/repos/tags/version1 Log message --- ------- commit_finalizing . Info: PYSVN CMD ls -v file:///b:/repos/tags 6 barry - 02-Apr-2018 11:35:48 file:///B:/repos/tags/version1 Info: PYSVN CMD copy b:\wc2\test\file1.txt b:\wc2\test\file1b.txt A B:/wc2/test/file1b.txt Info: PYSVN CMD propset svn:eol-style native b:\wc2\test\file1b.txt property_added B:/wc2/test/file1b.txt Info: PYSVN CMD checkin b:\wc2 -m "copy test" commit_copied B:/wc2/test/file1b.txt commit_finalizing . Revision 7 Info: Test - diff Info: Append File b:\wc2\test\file1b.txt - new line Info: PYSVN CMD diff b:\wc2 Index: B:/wc2/test/file1b.txt =================================================================== --- B:/wc2/test/file1b.txt (revision 7) +++ B:/wc2/test/file1b.txt (working copy) @@ -1,2 +1,3 @@ test add file 1 line 2 +new line Info: Test - export Info: PYSVN CMD export file:///b:/repos/trunk/test b:\export1.native A B:/export1.native A B:/export1.native/file1.txt A B:/export1.native/file1b.txt A B:/export1.native/file2.txt A B:/export1.native/file3.txt A B:/export1.native/file4.txt A B:/export1.native/file5.txt A B:/export1.native/folder1 A B:/export1.native/folder1/file7.txt A B:/export1.native/folder1/folder2 A B:/export1.native/folder1/folder2/file8.txt A B:/export1.native/folder3 Info: PYSVN CMD export --native-eol CR file:///b:/repos/trunk/test b:\export1.cr A B:/export1.cr A B:/export1.cr/file1.txt A B:/export1.cr/file1b.txt A B:/export1.cr/file2.txt A B:/export1.cr/file3.txt A B:/export1.cr/file4.txt A B:/export1.cr/file5.txt A B:/export1.cr/folder1 A B:/export1.cr/folder1/file7.txt A B:/export1.cr/folder1/folder2 A B:/export1.cr/folder1/folder2/file8.txt A B:/export1.cr/folder3 Info: PYSVN CMD export --native-eol LF file:///b:/repos/trunk/test b:\export1.lf A B:/export1.lf A B:/export1.lf/file1.txt A B:/export1.lf/file1b.txt A B:/export1.lf/file2.txt A B:/export1.lf/file3.txt A B:/export1.lf/file4.txt A B:/export1.lf/file5.txt A B:/export1.lf/folder1 A B:/export1.lf/folder1/file7.txt A B:/export1.lf/folder1/folder2 A B:/export1.lf/folder1/folder2/file8.txt A B:/export1.lf/folder3 Info: PYSVN CMD export --native-eol CRLF file:///b:/repos/trunk/test b:\export1.crlf A B:/export1.crlf A B:/export1.crlf/file1.txt A B:/export1.crlf/file1b.txt A B:/export1.crlf/file2.txt A B:/export1.crlf/file3.txt A B:/export1.crlf/file4.txt A B:/export1.crlf/file5.txt A B:/export1.crlf/folder1 A B:/export1.crlf/folder1/file7.txt A B:/export1.crlf/folder1/folder2 A B:/export1.crlf/folder1/folder2/file8.txt A B:/export1.crlf/folder3 Info: CMD dir /s /b b:\export1.native b:\export1.native\file1.txt b:\export1.native\file1b.txt b:\export1.native\file2.txt b:\export1.native\file3.txt b:\export1.native\file4.txt b:\export1.native\file5.txt b:\export1.native\folder1 b:\export1.native\folder3 b:\export1.native\folder1\file7.txt b:\export1.native\folder1\folder2 b:\export1.native\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.cr b:\export1.cr\file1.txt b:\export1.cr\file1b.txt b:\export1.cr\file2.txt b:\export1.cr\file3.txt b:\export1.cr\file4.txt b:\export1.cr\file5.txt b:\export1.cr\folder1 b:\export1.cr\folder3 b:\export1.cr\folder1\file7.txt b:\export1.cr\folder1\folder2 b:\export1.cr\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.lf b:\export1.lf\file1.txt b:\export1.lf\file1b.txt b:\export1.lf\file2.txt b:\export1.lf\file3.txt b:\export1.lf\file4.txt b:\export1.lf\file5.txt b:\export1.lf\folder1 b:\export1.lf\folder3 b:\export1.lf\folder1\file7.txt b:\export1.lf\folder1\folder2 b:\export1.lf\folder1\folder2\file8.txt Info: CMD dir /s /b b:\export1.crlf b:\export1.crlf\file1.txt b:\export1.crlf\file1b.txt b:\export1.crlf\file2.txt b:\export1.crlf\file3.txt b:\export1.crlf\file4.txt b:\export1.crlf\file5.txt b:\export1.crlf\folder1 b:\export1.crlf\folder3 b:\export1.crlf\folder1\file7.txt b:\export1.crlf\folder1\folder2 b:\export1.crlf\folder1\folder2\file8.txt Info: Test - info Info: PYSVN CMD info b:\wc2\test Path: b:\wc2\test Name: . Url: file:///B:/repos/trunk/test Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD info b:\wc2\test\file1.txt Path: b:\wc2\test\file1.txt Name: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: file Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Text Last Updated: 02-Apr-2018 11:35:47 Checksum: cb0b37e264ebcc467e9f37a069e034d7 Info: Test - log Info: PYSVN CMD log b:\wc2 ------------------------------------------------------------ rev 7: barry | 02-Apr-2018 11:35:49 | 1 lines copy test ------------------------------------------------------------ rev 4: barry | 02-Apr-2018 11:35:47 | 1 lines commit modified file ------------------------------------------------------------ rev 3: barry | 02-Apr-2018 11:35:46 | 1 lines commit added files ------------------------------------------------------------ rev 2: barry | 02-Apr-2018 11:35:44 | 1 lines test-01 add test ------------------------------------------------------------ rev 1: barry | 02-Apr-2018 11:35:43 | 1 lines test-01 add trunk ------------------------------------------------------------ Info: Test - ls Info: PYSVN CMD ls file:///b:/repos/trunk/test file:///B:/repos/trunk/test/file1.txt file:///B:/repos/trunk/test/file1b.txt file:///B:/repos/trunk/test/file2.txt file:///B:/repos/trunk/test/file3.txt file:///B:/repos/trunk/test/file4.txt file:///B:/repos/trunk/test/file5.txt file:///B:/repos/trunk/test/folder1 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls -v file:///b:/repos/trunk/test 4 barry 25 02-Apr-2018 11:35:47 file:///B:/repos/trunk/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 file:///B:/repos/trunk/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder1 3 barry - 02-Apr-2018 11:35:46 file:///B:/repos/trunk/test/folder3 Info: PYSVN CMD ls b:\wc2\test B:/wc2/test/file1.txt B:/wc2/test/file1b.txt B:/wc2/test/file2.txt B:/wc2/test/file3.txt B:/wc2/test/file4.txt B:/wc2/test/file5.txt B:/wc2/test/folder1 B:/wc2/test/folder3 Info: PYSVN CMD ls -v b:\wc2\test 4 barry 25 02-Apr-2018 11:35:47 B:/wc2/test/file1.txt 7 barry 23 02-Apr-2018 11:35:49 B:/wc2/test/file1b.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file2.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file3.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file4.txt 3 barry 17 02-Apr-2018 11:35:46 B:/wc2/test/file5.txt 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder1 3 barry - 02-Apr-2018 11:35:46 B:/wc2/test/folder3 Info: Test - merge - see below Info: Test - mkdir - done above Info: Test - move Info: Create File msg.tmp - move url test Info: PYSVN CMD move file:///b:/repos/trunk/test/file2.txt file:///b:/repos/trunk/test/file2b.txt Log message --- ------- commit_finalizing . Info: PYSVN CMD move b:\wc2\test\file3.txt b:\wc2\test\file3b.txt A B:/wc2/test/file3b.txt D B:/wc2/test/file3.txt Info: PYSVN CMD checkin b:\wc2 -m "move wc test" D B:/wc2/test/file3.txt M B:/wc2/test/file1b.txt commit_copied B:/wc2/test/file3b.txt commit_finalizing . Revision 9 Info: Test - status Info: Append File b:\wc1\test\file4.txt - file 4 is changing Info: PYSVN CMD checkin b:\wc1 -m "change wc1 for status -u to detect" M B:/wc1/test/file4.txt commit_finalizing . Revision 10 Info: PYSVN CMD status b:\wc2 Info: PYSVN CMD status --verbose b:\wc2 4 4 barry B:\wc2 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt 4 3 barry B:\wc2\test\file2.txt 9 9 barry B:\wc2\test\file3b.txt 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD update A B:/wc1/test/file1b.txt A B:/wc1/test/file2b.txt A B:/wc1/test/file3b.txt D B:/wc1/test/file2.txt D B:/wc1/test/file3.txt U B:/wc1 U B:/wc1/test update_started B:/wc1/test Updated to revision 10 Info: PYSVN CMD status --show-updates b:\wc2 M B:\wc2\test D B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt M B:\wc2\test\file4.txt Info: PYSVN CMD status --show-updates --verbose b:\wc2 4 4 barry B:\wc2 M 4 4 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 9 9 barry B:\wc2\test\file1b.txt D 4 3 barry B:\wc2\test\file2.txt A B:\wc2\test\file2b.txt 9 9 barry B:\wc2\test\file3b.txt M 4 3 barry B:\wc2\test\file4.txt 4 3 barry B:\wc2\test\file5.txt 4 3 barry B:\wc2\test\folder1 4 3 barry B:\wc2\test\folder1\file7.txt 4 3 barry B:\wc2\test\folder1\folder2 4 3 barry B:\wc2\test\folder1\folder2\file8.txt 4 3 barry B:\wc2\test\folder3 Info: PYSVN CMD checkin b:\wc2 -m "prop change" Nothing to commit Info: Test - propdel Info: CMD cd /d b:\wc2\test Info: PYSVN CMD propset test:prop1 del_me file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': test:prop1: del_me Info: PYSVN CMD propdel test:prop1 file4.txt property_deleted B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Info: Test - propget Info: PYSVN CMD propget svn:eol-style file4.txt Info: Test - proplist - see above Info: Test - propset Info: CMD cd /d b:\wc2\test Info: PYSVN CMD proplist -v file4.txt Info: PYSVN CMD propset svn:eol-style native file4.txt property_added B:/wc2/test/file4.txt Info: PYSVN CMD proplist -v file4.txt Properties on 'file4.txt': svn:eol-style: native Info: Test - remove Info: CMD cd /d b:\wc2\test Info: PYSVN CMD remove file5.txt D B:/wc2/test/file5.txt Info: PYSVN CMD status MM file4.txt D file5.txt Info: Test - resolved Info: Append File b:\wc1\test\file4.txt - conflict in file4 yes Info: Append File b:\wc2\test\file4.txt - conflict in file4 no Info: PYSVN CMD checkin b:\wc1\test -m "make a conflict part 1" M B:/wc1/test/file4.txt commit_finalizing . Revision 11 Info: PYSVN CMD update b:\wc2\test callback_conflict_resolver action: base_file: B:\wc2\test\file4.txt.r4 is_binary: False kind: merged_file: B:\wc2\test\file4.txt mime_type: None my_file: B:\wc2\test\file4.txt.mine node_kind: operation: path: B:/wc2/test/file4.txt property_name: None reason: src_left_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} src_right_version: {'node_kind': , 'path_in_repos': 'trunk/test/file4.txt', 'peg_rev': , 'repos_url': 'file:///B:/repos'} their_file: B:\wc2\test\file4.txt.r11 A B:/wc2/test/file2b.txt D B:/wc2/test/file2.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt update_started B:/wc2/test Updated to revision 11 Info: PYSVN CMD status CM file4.txt ? file4.txt.mine ? file4.txt.r11 ? file4.txt.r4 D file5.txt Info: CMD copy b:\wc2\test\file4.txt.mine b:\wc2\test\file4.txt 1 file(s) copied. Info: PYSVN CMD resolved b:\wc2\test\file4.txt R B:/wc2/test/file4.txt conflict_resolver_done B:/wc2/test/file4.txt conflict_resolver_starting B:/wc2/test/file4.txt Info: PYSVN CMD checkin b:\wc2\test\file4.txt -m "resolve a confict part 2" M B:/wc2/test/file4.txt commit_finalizing . Revision 12 Info: Test - revert Info: PYSVN CMD revert file5.txt R B:/wc2/test/file5.txt Info: PYSVN CMD status Info: Test - revproplist Info: PYSVN CMD revproplist file:///b:/repos/trunk Revision: 12 svn:author: barry svn:date: 2018-04-02T10:36:00.639488Z svn:log: resolve a confict part 2 Info: Test - revpropget Info: PYSVN CMD revpropget svn:log file:///b:/repos/trunk Revision: 12 svn:log: resolve a confict part 2 Info: PYSVN CMD revpropget no_such_prop file:///b:/repos/trunk Revision: 12 no_such_prop: None Info: Test - revpropset Info: PYSVN CMD revpropset svn:log "Hello world" file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - revpropdel Info: PYSVN CMD revpropdel svn:log file:///b:/repos/trunk Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook Info: Test - status - see above Info: Test - relocate Info: CMD mkdir b:\root Info: CMD move b:\repos b:\root 1 dir(s) moved. Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc1 Info: PYSVN CMD info b:\wc1 Path: b:\wc1 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 2 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 2 Last Changed Date: 02-Apr-2018 11:35:44 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD relocate file:///b:/repos/trunk file:///b:/root/repos/trunk b:\wc2 Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: Test - switch Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/trunk Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 4 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 4 Last Changed Date: 02-Apr-2018 11:35:47 Info: PYSVN CMD switch b:\wc2 file:///b:/root/repos/tags/version1 A B:/wc2/test/file2.txt A B:/wc2/test/file3.txt D B:/wc2/test/file1b.txt D B:/wc2/test/file2b.txt D B:/wc2/test/file3b.txt U B:/wc2 U B:/wc2/test U B:/wc2/test/file4.txt Info: PYSVN CMD info b:\wc2 Path: b:\wc2 Name: . Url: file:///B:/root/repos/tags/version1 Repository UUID: 0a055c6c-77ad-0f44-ac07-d949eb871b7b Revision: 12 Node kind: directory Schedule: normal Last Changed Author: barry Last Changed Rev: 6 Last Changed Date: 02-Apr-2018 11:35:48 Info: Test - update - see above Info: Test - Info: Testing - merge Info: PYSVN CMD checkout file:///b:/root/repos/trunk b:\wc3 A B:/wc3/test A B:/wc3/test/file1.txt A B:/wc3/test/file1b.txt A B:/wc3/test/file2b.txt A B:/wc3/test/file3b.txt A B:/wc3/test/file4.txt A B:/wc3/test/file5.txt A B:/wc3/test/folder1 A B:/wc3/test/folder1/file7.txt A B:/wc3/test/folder1/folder2 A B:/wc3/test/folder1/folder2/file8.txt A B:/wc3/test/folder3 U B:/wc3 update_started B:/wc3 Checked out revision 12 Info: CMD cd b:\wc3\test Info: Create File file-merge-1.txt - test add file merge 1 Info: Create File file-merge-2.txt - test add file merge 2 Info: PYSVN CMD add file-merge-1.txt A B:/wc3/test/file-merge-1.txt Info: PYSVN CMD add file-merge-2.txt A B:/wc3/test/file-merge-2.txt Info: PYSVN CMD commit -m "add test merge files" . A B:/wc3/test/file-merge-1.txt A B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 13 Info: Create File msg.tmp - make a branch Info: PYSVN CMD copy file:///b:/root/repos/trunk/test file:///b:/root/repos/trunk/test-branch Log message --- ------- commit_finalizing . Info: PYSVN CMD update b:\wc3 A B:/wc3/test-branch A B:/wc3/test-branch/file-merge-1.txt A B:/wc3/test-branch/file-merge-2.txt A B:/wc3/test-branch/file1.txt A B:/wc3/test-branch/file1b.txt A B:/wc3/test-branch/file2b.txt A B:/wc3/test-branch/file3b.txt A B:/wc3/test-branch/file4.txt A B:/wc3/test-branch/file5.txt A B:/wc3/test-branch/folder1 A B:/wc3/test-branch/folder1/file7.txt A B:/wc3/test-branch/folder1/folder2 A B:/wc3/test-branch/folder1/folder2/file8.txt A B:/wc3/test-branch/folder3 U B:/wc3 update_started B:/wc3 Updated to revision 14 Info: Create File file-merge-3.txt - test add file merge 3 Info: PYSVN CMD add file-merge-3.txt A B:/wc3/test/file-merge-3.txt Info: PYSVN CMD rm file-merge-1.txt D B:/wc3/test/file-merge-1.txt Info: Append File file-merge-2.txt - modify merge 2 Info: PYSVN CMD commit -m "change test merge files" . A B:/wc3/test/file-merge-3.txt D B:/wc3/test/file-merge-1.txt M B:/wc3/test/file-merge-2.txt commit_finalizing . Revision 15 Info: PYSVN CMD merge --dry-run --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch A B:/wc3/test-branch/file-merge-3.txt D B:/wc3/test-branch/file-merge-1.txt U B:/wc3/test-branch/file-merge-2.txt U B:/wc3/test-branch/file-merge-2.txt merge_begin B:/wc3/test-branch merge_completed B:/wc3/test-branch merge_elide_info B:/wc3/test-branch/file-merge-2.txt merge_record_info B:/wc3/test-branch merge_record_info B:/wc3/test-branch/file-merge-2.txt merge_record_info_begin B:/wc3/test-branch merge_record_info_begin B:/wc3/test-branch/file-merge-2.txt Info: PYSVN CMD merge --revision 14:15 file:///b:/root/repos/trunk/test b:\wc3\test-branch merge_completed B:/wc3/test-branch Info: PYSVN CMD status b:\wc3\test-branch M B:\wc3\test-branch D B:\wc3\test-branch\file-merge-1.txt M B:\wc3\test-branch\file-merge-2.txt A + B:\wc3\test-branch\file-merge-3.txt Info: PYSVN CMD diff b:\wc3\test-branch Index: B:/wc3/test-branch/file-merge-1.txt =================================================================== --- B:/wc3/test-branch/file-merge-1.txt (revision 14) +++ B:/wc3/test-branch/file-merge-1.txt (nonexistent) @@ -1 +0,0 @@ -test add file merge 1 Index: B:/wc3/test-branch/file-merge-2.txt =================================================================== --- B:/wc3/test-branch/file-merge-2.txt (revision 14) +++ B:/wc3/test-branch/file-merge-2.txt (working copy) @@ -1 +1,2 @@ test add file merge 2 +modify merge 2 Index: B:/wc3/test-branch/file-merge-3.txt =================================================================== Index: B:/wc3/test-branch =================================================================== --- B:/wc3/test-branch (revision 14) +++ B:/wc3/test-branch (working copy) Property changes on: B:/wc3/test-branch ___________________________________________________________________ Added: svn:mergeinfo ## -0,0 +0,1 ## Merged /trunk/test:r15 Info: CMD c:\python35.Win64\python.exe -u C:\Users\barry\wc\svn\PySVN\Extension\Tests\test_01_set_get_tests.py b:\configdir Info: test_01_set_get_tests start Info: test_01_set_get_tests import pysvn Info: test_01_set_get_tests pysvn.Client( b:\configdir ) Info: Initial values Info: get_auth_cache() => 1 Info: get_auto_props() => 0 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: Change values 1 Info: Changed values 1 Info: get_auth_cache() => 0 Info: get_auto_props() => 0 Info: get_default_password() => 'thepass' Info: get_default_username() => 'auser' Info: get_interactive() => 0 Info: get_store_passwords() => 0 Info: Change values 2 Info: Changed values 2 Info: get_auth_cache() => 1 Info: get_auto_props() => 1 Info: get_default_password() => None Info: get_default_username() => None Info: get_interactive() => 1 Info: get_store_passwords() => 1 Info: test_01_set_get_tests dealloc Client() Info: test_01_set_get_tests done Info: Test - import Info: CMD mkdir b:\tmp Info: Create File b:\tmp\import1.txt - import file 1 Info: Create File "b:\tmp\import 2.txt" - import file 2 Info: PYSVN CMD mkdir "file:///b:/root/repos/trunk/test/import" -m "test-01 add import" commit_finalizing . Info: PYSVN CMD import --message "no spaces" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import-file1.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import file1A.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "0 in url" "b:\tmp\import1.txt" "file:///b:/root/repos/trunk/test/import/import0file1B.txt" A B:/tmp/import1.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, none in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import-file2.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, space in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import file2A.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD import --message "space in file, 0 in url" "b:\tmp\import 2.txt" "file:///b:/root/repos/trunk/test/import/import0file2B.txt" A B:/tmp/import 2.txt commit_finalizing . Info: PYSVN CMD update b:\wc1 A B:/wc1/test-branch A B:/wc1/test-branch/file-merge-1.txt A B:/wc1/test-branch/file-merge-2.txt A B:/wc1/test-branch/file1.txt A B:/wc1/test-branch/file1b.txt A B:/wc1/test-branch/file2b.txt A B:/wc1/test-branch/file3b.txt A B:/wc1/test-branch/file4.txt A B:/wc1/test-branch/file5.txt A B:/wc1/test-branch/folder1 A B:/wc1/test-branch/folder1/file7.txt A B:/wc1/test-branch/folder1/folder2 A B:/wc1/test-branch/folder1/folder2/file8.txt A B:/wc1/test-branch/folder3 A B:/wc1/test/file-merge-2.txt A B:/wc1/test/file-merge-3.txt A B:/wc1/test/import A B:/wc1/test/import/import file1A.txt A B:/wc1/test/import/import file2A.txt A B:/wc1/test/import/import-file1.txt A B:/wc1/test/import/import-file2.txt A B:/wc1/test/import/import0file1B.txt A B:/wc1/test/import/import0file2B.txt U B:/wc1 U B:/wc1/test U B:/wc1/test/file4.txt update_started B:/wc1 Updated to revision 22 Info: PYSVN CMD log --limit 6 --verbose b:\wc1 ------------------------------------------------------------ rev 22: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import0file2B.txt space in file, 0 in url ------------------------------------------------------------ rev 21: barry | 02-Apr-2018 11:36:08 | 1 lines Changed paths: A /trunk/test/import/import file2A.txt space in file, space in url ------------------------------------------------------------ rev 20: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import-file2.txt space in file, none in url ------------------------------------------------------------ rev 19: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import0file1B.txt 0 in url ------------------------------------------------------------ rev 18: barry | 02-Apr-2018 11:36:07 | 1 lines Changed paths: A /trunk/test/import/import file1A.txt space in url ------------------------------------------------------------ rev 17: barry | 02-Apr-2018 11:36:06 | 1 lines Changed paths: A /trunk/test/import/import-file1.txt no spaces ------------------------------------------------------------ Info: Test - end pysvn-1.9.22/Tests/test-03.unix.known_good-py3-svn1.8.log000644 000765 000024 00000001411 12164247515 023147 0ustar00barrystaff000000 000000 WorkDir: /Users/barry/wc/svn/pysvn/Extension PYTHON: /usr/bin/python2.3 Info: Client created Info: Expecting error callback_get_login required Info: passed Info: Expecting error unhandled exception in callback_get_login Traceback (most recent call last): File "../test_callbacks.py", line 79, in get_login_bad return retcode, username, password, save NameError: global name 'retcode' is not defined Info: passed Info: Expecting error callback_get_log_message required Info: passed Info: Expecting error unhandled exception in callback_get_log_message Traceback (most recent call last): File "../test_callbacks.py", line 86, in get_log_message_bad return bad_var NameError: global name 'bad_var' is not defined Info: passed Info: Expecting error None Info: Passed 4 pysvn-1.9.22/Tests/test-05.win32.known_good-py2-svn1.9.log000644 000765 000024 00000023647 13260740056 023143 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python27.Win32\python.exe Username: barry Info: PYSVN CMD c:\python27.Win32\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 7ddeabd0-854d-d84f-afbc-db32d37161fe Last changed author: barry Last Changed Date: 03-Apr-2018 09:18:17 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 03-Apr-2018 09:18:16 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 09:18:17 B:/wc1/test 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file1.txt 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 7ddeabd0-854d-d84f-afbc-db32d37161fe Last changed author: barry Last Changed Date: 03-Apr-2018 09:18:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 09:18:18 Lock Token: opaquelocktoken:880cafc3-b1c9-414a-8e9e-49d9e30e6664 Lock Comment: Schedule: normal Text Last Updated: 03-Apr-2018 09:18:16 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 09:18:18 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 03-Apr-2018 09:18:17 B:/wc1/test 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-03 09:18:18 3 barry 17 03-Apr-2018 09:18:17 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 7ddeabd0-854d-d84f-afbc-db32d37161fe Last changed author: barry Last Changed Date: 03-Apr-2018 09:18:17 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 03-Apr-2018 09:18:19 Lock Token: opaquelocktoken:4d721524-950c-2641-9bed-7ce6757ca31d Lock Comment: Stealing lock Schedule: normal Text Last Updated: 03-Apr-2018 09:18:17 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 03-Apr-2018 09:18:17 B:/wc2 3 barry 0 03-Apr-2018 09:18:17 B:/wc2/test 3 barry 17 03-Apr-2018 09:18:17 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 09:18:19 3 barry 17 03-Apr-2018 09:18:17 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 09:18:20 B:/wc2 4 barry 0 03-Apr-2018 09:18:20 B:/wc2/test 4 barry 35 03-Apr-2018 09:18:20 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-03 09:18:19 4 barry 35 03-Apr-2018 09:18:20 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 03-Apr-2018 09:18:20 B:/wc2 4 barry 0 03-Apr-2018 09:18:20 B:/wc2/test 4 barry 35 03-Apr-2018 09:18:20 B:/wc2/test/file1.txt 4 barry 35 03-Apr-2018 09:18:20 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 09:18:20 B:/wc1 4 barry 0 03-Apr-2018 09:18:20 B:/wc1/test 4 barry 35 03-Apr-2018 09:18:20 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 09:18:20 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 7ddeabd0-854d-d84f-afbc-db32d37161fe Last changed author: barry Last Changed Date: 03-Apr-2018 09:18:20 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 03-Apr-2018 09:18:20 B:/wc1 4 barry 0 03-Apr-2018 09:18:20 B:/wc1/test 4 barry 35 03-Apr-2018 09:18:20 B:/wc1/test/file1.txt 4 barry 35 03-Apr-2018 09:18:20 B:/wc1/test/file2.txt pysvn-1.9.22/Tests/test-10.win32.known_good-py3-svn1.9.log000644 000765 000024 00000005174 12710213263 023125 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.09.00 --config-dir b:\configdir Info: CMD mkdir testroot-10 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-10 Info: CMD cd /d b:\ Info: CMD mkdir tmp Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-10 add trunk" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 update_started B:/wc1 Checked out revision 1 Info: CMD cd /d b:\wc1 Info: Setup - add files and folders Info: PYSVN CMD mkdir folder1 A B:/wc1/folder1 Info: PYSVN CMD propset svn:ignore "*~" folder1 property_added B:/wc1/folder1 Info: Create File folder1\file-a.txt - test add file 1 Info: PYSVN CMD add folder1\file-a.txt A B:/wc1/folder1/file-a.txt Info: Create File folder1/file-a.txt~ - test add file 1 Info: Create File folder1/file-b.txt - test add file 1 Info: vacuum no removes Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum Info: vacuum remove ignored Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-a.txt~ ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-ignored-items D B:/wc1/folder1/file-a.txt~ Info: vacuum remove versioned Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt ? B:\wc1\folder1\file-b.txt Info: PYSVN CMD vacuum --remove-unversioned-items D B:/wc1/folder1/file-b.txt Info: check final state Info: PYSVN CMD status2 --verbose --no-ignore . 1 1 barry B:\wc1 M -1 -1 None B:\wc1\folder1 M -1 -1 None B:\wc1\folder1\file-a.txt pysvn-1.9.22/Tests/test-05.win32.known_good-py3-svn1.11.log000644 000765 000024 00000023733 13404261102 023177 0ustar00barrystaff000000 000000 WorkDir: C:\Users\barry\wc\svn\PySVN\Extension PYTHON: c:\python35.Win64\python.exe Username: barry Info: PYSVN CMD c:\python35.Win64\python.exe C:\Users\barry\wc\svn\PySVN\Extension\Examples\Client\svn_cmd.py --pysvn-testing 01.03.00 --config-dir b:\configdir Info: CMD mkdir testroot-05 Info: CMD subst b: C:\Users\barry\wc\svn\PySVN\Extension\Tests\testroot-05 Info: CMD cd /d b:\ Info: CMD svnadmin create b:\repos Info: Setup - mkdir Info: PYSVN CMD mkdir file:///b:/repos/trunk -m "test-05 add trunk" commit_finalizing . Info: PYSVN CMD mkdir file:///b:/repos/trunk/test -m "test-05 add test" commit_finalizing . Info: Setup - checkout wc1 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc1 A B:/wc1/test U B:/wc1 update_started B:/wc1 Checked out revision 2 Info: CMD cd b:\wc1\test Info: Setup - add files Info: Create File file1.txt - test add file 1 Info: Create File file2.txt - test add file 2 Info: PYSVN CMD add file1.txt A B:/wc1/test/file1.txt Info: PYSVN CMD add file2.txt A B:/wc1/test/file2.txt Info: PYSVN CMD checkin -m "commit added files" A B:/wc1/test/file1.txt A B:/wc1/test/file2.txt commit_finalizing . Revision 3 Info: Setup - checkout wc2 Info: PYSVN CMD checkout file:///b:/repos/trunk b:\wc2 A B:/wc2/test A B:/wc2/test/file1.txt A B:/wc2/test/file2.txt U B:/wc2 update_started B:/wc2 Checked out revision 3 Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of unlocked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - lock unlocked file Info: PYSVN CMD lock b:\wc1\test\file1.txt locked B:/wc1/test/file1.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc1\test\file1.txt Path: B:/wc1/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:50 Lock Token: opaquelocktoken:853bde7e-8aaf-874b-bc69-1005953af9ac Lock Comment: Schedule: normal Text Last Updated: 02-Apr-2018 11:36:48 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test\file1.txt 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 Info: PYSVN CMD list --verbose --fetch-locks b:\wc1\test 3 barry - 02-Apr-2018 11:36:49 B:/wc1/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file1.txt Lock owner: barry Lock comment: Lock created: 2018-04-02 11:36:50 3 barry 17 02-Apr-2018 11:36:49 B:/wc1/test/file2.txt Info: Test - attempt to checkin over a locked file Info: CMD cd b:\wc2\test Info: Append File file1.txt - Change to file 1 Info: Append File file2.txt - Change to file 2 Info: PYSVN CMD commit -m "change when file locked in other wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt failed_locked B:/wc2/test/file1.txt Commit failed (details follow): File 'B:\wc2\test\file1.txt' is locked in another working copy While preparing 'B:\wc2\test\file1.txt' for commit Cannot verify lock on path '/trunk/test/file1.txt'; no matching lock-token available Info: Test - lock locked file Info: PYSVN CMD lock b:\wc2\test\file1.txt failed_lock B:/wc2/test/file1.txt Info: Test - lock --force locked file Info: PYSVN CMD lock --force b:\wc2\test\file1.txt -m "Stealing lock" locked B:/wc2/test/file1.txt Info: Test - info2 of locked files Info: PYSVN CMD info2 b:\wc2\test\file1.txt Path: B:/wc2/test/file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 3 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:49 Last changed revision: 3 Node kind: file Lock Owner: barry Lock Creation Date: 02-Apr-2018 11:36:57 Lock Token: opaquelocktoken:7b8e9287-f31a-bc46-9b90-17ec8f17908e Lock Comment: Stealing lock Schedule: normal Text Last Updated: 02-Apr-2018 11:36:49 Checksum: d88eba14019658765c3dc2a2b46c4d0f1ee50e5f Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test M K 3 3 barry B:\wc2\test\file1.txt M 3 3 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2 3 barry - 02-Apr-2018 11:36:49 B:/wc2/test 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 3 barry 17 02-Apr-2018 11:36:49 B:/wc2/test/file2.txt Info: Test - commit with lock Info: PYSVN CMD commit -m "change when file locked in this wc" . M B:/wc2/test/file1.txt M B:/wc2/test/file2.txt commit_finalizing . Revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test K 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt Lock owner: barry Lock comment: Stealing lock Lock created: 2018-04-02 11:36:57 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - unlock locked file Info: PYSVN CMD unlock b:\wc2\test\file1.txt unlocked B:/wc2/test/file1.txt Info: Test - status of unlocked files Info: PYSVN CMD status --verbose b:\wc2 3 3 barry B:\wc2 3 3 barry B:\wc2\test 4 4 barry B:\wc2\test\file1.txt 4 4 barry B:\wc2\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2 4 barry - 02-Apr-2018 11:36:57 B:/wc2/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc2/test/file2.txt Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 2 2 barry B:\wc1\test K 3 3 barry B:\wc1\test\file1.txt 3 3 barry B:\wc1\test\file2.txt Info: Test - list of unlocked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt Info: Test - update with stolen lock Info: PYSVN CMD update b:\wc1\test U B:/wc1 U B:/wc1/test U B:/wc1/test/file1.txt U B:/wc1/test/file2.txt update_started B:/wc1/test Updated to revision 4 Info: Test - status of locked files Info: PYSVN CMD status --verbose b:\wc1 2 2 barry B:\wc1 4 4 barry B:\wc1\test 4 4 barry B:\wc1\test\file1.txt 4 4 barry B:\wc1\test\file2.txt Info: Test - info2 of URL Info: PYSVN CMD info2 --revision HEAD file:///b:/repos/trunk/test/file1.txt Path: file1.txt Url: file:///B:/repos/trunk/test/file1.txt Revision: 4 Repository root_URL: file:///B:/repos Repository UUID: 54017555-937f-e04f-98a9-7a3817f31a91 Last changed author: barry Last Changed Date: 02-Apr-2018 11:36:57 Last changed revision: 4 Node kind: file Info: Test - list of locked files Info: PYSVN CMD list --verbose --fetch-locks --recursive b:\wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1 4 barry - 02-Apr-2018 11:36:57 B:/wc1/test 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file1.txt 4 barry 35 02-Apr-2018 11:36:57 B:/wc1/test/file2.txt pysvn-1.9.22/Source/pysvn_client_cmd_copy.cpp000644 000765 000024 00000053400 12710150471 021604 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_diff.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" #if defined( PYSVN_HAS_CLIENT_COPY4 ) || defined( PYSVN_HAS_CLIENT_COPY5 ) || defined( PYSVN_HAS_CLIENT_COPY6 ) || defined( PYSVN_HAS_CLIENT_COPY7 ) Py::Object pysvn_client::cmd_copy2( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_sources }, { true, name_dest_url_or_path }, { false, name_copy_as_child }, { false, name_make_parents }, { false, name_revprops }, #if defined( PYSVN_HAS_CLIENT_COPY5 ) { false, name_ignore_externals }, #endif #if defined( PYSVN_HAS_CLIENT_COPY7 ) { false, name_metadata_only }, { false, name_pin_externals }, { false, name_externals_to_pin }, #endif { false, NULL } }; FunctionArguments args( "copy2", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_COPY6 ) CommitInfoResult commit_info( pool ); #else pysvn_commit_info_t *commit_info = NULL; #endif std::string type_error_message; try { type_error_message = "expecting list for sources (arg 1)"; Py::List list_all_sources = args.getArg( name_sources ); apr_array_header_t *all_sources = apr_array_make( pool, list_all_sources.length(), sizeof(svn_client_copy_source_t *) ); for( unsigned int index=0; index( apr_palloc( pool, sizeof( svn_opt_revision_t ) ) ); svn_opt_revision_t *peg_revision = reinterpret_cast( apr_palloc( pool, sizeof( svn_opt_revision_t ) ) ); if( tuple_src_rev_pegrev.length() > 3 ) { std::string msg = "copy2() expecting tuple with 2 or 3 values in sources list"; throw Py::AttributeError( msg ); } type_error_message = "expecting string for 1st tuple value in sources list"; Py::String py_src_url_or_path( tuple_src_rev_pegrev[0] ); src_url_or_path = py_src_url_or_path.as_std_string( name_utf8 ); std::string norm_src_url_or_path( svnNormalisedIfPath( src_url_or_path, pool ) ); bool is_url = is_svn_url( norm_src_url_or_path ); if( tuple_src_rev_pegrev.length() >= 2 ) { Py::Object obj( tuple_src_rev_pegrev[1] ); if( pysvn_revision::check( obj ) ) { pysvn_revision *rev = static_cast( obj.ptr() ); *revision = rev->getSvnRevision(); revisionKindCompatibleCheck( is_url, *revision, "sources list 2nd tuple value", "sources list 1st tuple value" ); } else { std::string msg = "copy2() expecting revision for 2nd tuple value in sources list"; throw Py::AttributeError( msg ); } } else { if( is_url ) { revision->kind = svn_opt_revision_head; } else { revision->kind = svn_opt_revision_working; } } if( tuple_src_rev_pegrev.length() >= 3 ) { Py::Object obj( tuple_src_rev_pegrev[2] ); if( pysvn_revision::check( obj ) ) { pysvn_revision *rev = static_cast( obj.ptr() ); *peg_revision = rev->getSvnRevision(); revisionKindCompatibleCheck( is_url, *peg_revision, "sources list 2nd tuple value", "sources list 1st tuple value" ); } else { std::string msg = "copy2() expecting revision for 3rd tuple value in sources list"; throw Py::AttributeError( msg ); } } else { *peg_revision = *revision; } svn_client_copy_source_t *source = reinterpret_cast( apr_palloc( pool, sizeof(*source) ) ); source->path = apr_pstrdup( pool, norm_src_url_or_path.c_str() ); source->revision = revision; source->peg_revision = peg_revision; APR_ARRAY_PUSH( all_sources, svn_client_copy_source_t *) = source; } type_error_message = "expecting string for dest_url_or_path"; Py::String dest_path( args.getUtf8String( name_dest_url_or_path ) ); type_error_message = "expecting boolean for keyword copy_as_child"; bool copy_as_child = args.getBoolean( name_copy_as_child, false ); type_error_message = "expecting boolean for keyword make_parents"; bool make_parents = args.getBoolean( name_make_parents, false ); apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #if defined( PYSVN_HAS_CLIENT_COPY5 ) type_error_message = "expecting boolean for keyword ignore_externals"; bool ignore_externals = args.getBoolean( name_ignore_externals, false ); #endif #if defined( PYSVN_HAS_CLIENT_COPY7 ) bool metadata_only = args.getBoolean( name_metadata_only, false ); bool pin_externals = args.getBoolean( name_pin_externals, false ); apr_hash_t *externals_to_pin = NULL; if( pin_externals && args.hasArg( name_externals_to_pin ) ) { // apr_hash_t key=abspath_or_url, value=apr_array_header_t from // svn_wc_parse_externals_description3() externals_to_pin = apr_hash_make( pool ); type_error_message = "expecting list of (path_or_url, description) for externals_to_pin"; Py::List py_externals_to_pin( args.getArg( name_externals_to_pin ) ); for( int index=0; index causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_docs.hpp" #include "pysvn_version.hpp" #include "svn_version.h" #include "svn_ra.h" #include "pysvn_static_strings.hpp" #ifdef _WIN32 // include to cause the windows manifest file to be created for pysvn.pyd // as it contains the pragma with linker instructions for the C runtime libs #include #endif extern "C" int pysvn_breakpoint() { return 0; } #if defined(MS_WINDOWS) const svn_version_t *ra_ver; #endif pysvn_module::pysvn_module() : Py::ExtensionModule( "pysvn" ) , client_error() { // init APR once globally - rather then on demand // to avoid life time issues with pools apr_initialize(); apr_pool_initialize(); #if defined(MS_WINDOWS) // on windows the libsvn_ra-1.dll must be forced to load when pysvn loads // otherwise a random version from the PATH is loaded or none is found ra_ver = svn_ra_version(); #endif client_error.init( *this, "ClientError" ); pysvn_client::init_type(); pysvn_transaction::init_type(); pysvn_revision::init_type(); pysvn_enum< svn_opt_revision_kind >::init_type(); pysvn_enum_value< svn_opt_revision_kind >::init_type(); pysvn_enum< svn_wc_notify_action_t >::init_type(); pysvn_enum_value< svn_wc_notify_action_t >::init_type(); pysvn_enum< svn_wc_status_kind >::init_type(); pysvn_enum_value< svn_wc_status_kind >::init_type(); pysvn_enum< svn_wc_schedule_t >::init_type(); pysvn_enum_value< svn_wc_schedule_t >::init_type(); pysvn_enum< svn_wc_merge_outcome_t >::init_type(); pysvn_enum_value< svn_wc_merge_outcome_t >::init_type(); pysvn_enum< svn_wc_notify_state_t >::init_type(); pysvn_enum_value< svn_wc_notify_state_t >::init_type(); pysvn_enum< svn_node_kind_t >::init_type(); pysvn_enum_value< svn_node_kind_t >::init_type(); #if defined( PYSVN_HAS_DIFF_FILE_IGNORE_SPACE ) pysvn_enum< svn_diff_file_ignore_space_t >::init_type(); pysvn_enum_value< svn_diff_file_ignore_space_t >::init_type(); #endif #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) pysvn_enum< svn_client_diff_summarize_kind_t >::init_type(); pysvn_enum_value< svn_client_diff_summarize_kind_t >::init_type(); #endif #ifdef QQQ pysvn_enum< svn_wc_conflict_action_t >::init_type(); pysvn_enum_value< svn_wc_conflict_action_t >::init_type(); #endif #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) pysvn_enum< svn_depth_t >::init_type(); pysvn_enum_value< svn_depth_t >::init_type(); #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) pysvn_enum< svn_wc_conflict_choice_t >::init_type(); pysvn_enum_value< svn_wc_conflict_choice_t >::init_type(); pysvn_enum< svn_wc_conflict_action_t >::init_type(); pysvn_enum_value< svn_wc_conflict_action_t >::init_type(); pysvn_enum< svn_wc_conflict_kind_t >::init_type(); pysvn_enum_value< svn_wc_conflict_kind_t >::init_type(); pysvn_enum< svn_wc_conflict_reason_t >::init_type(); pysvn_enum_value< svn_wc_conflict_reason_t >::init_type(); #endif #if defined( PYSVN_HAS_SVN_WC_OPERATION_T ) pysvn_enum< svn_wc_operation_t >::init_type(); pysvn_enum_value< svn_wc_operation_t >::init_type(); #endif add_keyword_method( "_Client", &pysvn_module::new_client, pysvn_client_doc ); add_keyword_method( "Revision", &pysvn_module::new_revision, pysvn_revision_doc ); add_keyword_method( "_Transaction", &pysvn_module::new_transaction, pysvn_transaction_doc ); initialize( pysvn_module_doc ); Py::Dict d( moduleDictionary() ); d["ClientError"] = client_error; d["copyright"] = Py::String( copyright_doc ); Py::Tuple version(4); version[0] = Py::Int( version_major ); version[1] = Py::Int( version_minor ); version[2] = Py::Int( version_patch ); version[3] = Py::Int( version_build ); d["version"] = version; Py::Tuple svn_api_version(4); svn_api_version[0] = Py::Int( SVN_VER_MAJOR ); svn_api_version[1] = Py::Int( SVN_VER_MINOR ); svn_api_version[2] = Py::Int( SVN_VER_MICRO ); svn_api_version[3] = Py::String( SVN_VER_TAG ); #if defined( PYSVN_HAS_CLIENT_VERSION ) const svn_version_t *client_version = svn_client_version(); Py::Tuple svn_version(4); svn_version[0] = Py::Int( client_version->major ); svn_version[1] = Py::Int( client_version->minor ); svn_version[2] = Py::Int( client_version->patch ); svn_version[3] = Py::String( client_version->tag ); d["svn_version"] = svn_version; d["svn_api_version"] = svn_api_version; #else d["svn_version"] = svn_api_version; d["svn_api_version"] = svn_api_version; #endif d["opt_revision_kind"] = Py::asObject( new pysvn_enum< svn_opt_revision_kind >() ); d["wc_notify_action"] = Py::asObject( new pysvn_enum< svn_wc_notify_action_t >() ); d["wc_status_kind"] = Py::asObject( new pysvn_enum< svn_wc_status_kind >() ); d["wc_schedule"] = Py::asObject( new pysvn_enum< svn_wc_schedule_t >() ); d["wc_merge_outcome"] = Py::asObject( new pysvn_enum< svn_wc_merge_outcome_t >() ); d["wc_notify_state"] = Py::asObject( new pysvn_enum< svn_wc_notify_state_t >() ); d["node_kind"] = Py::asObject( new pysvn_enum< svn_node_kind_t >() ); #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) d["diff_summarize_kind"] = Py::asObject( new pysvn_enum< svn_client_diff_summarize_kind_t >() ); #endif #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) d["depth"] = Py::asObject( new pysvn_enum< svn_depth_t >() ); #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) d["wc_conflict_choice"] = Py::asObject( new pysvn_enum< svn_wc_conflict_choice_t >() ); d["wc_conflict_action"] = Py::asObject( new pysvn_enum< svn_wc_conflict_action_t >() ); d["wc_conflict_kind"] = Py::asObject( new pysvn_enum< svn_wc_conflict_kind_t >() ); d["wc_conflict_reason"] = Py::asObject( new pysvn_enum< svn_wc_conflict_reason_t >() ); #endif #if defined( PYSVN_HAS_SVN_WC_OPERATION_T ) d["wc_operation"] = Py::asObject( new pysvn_enum< svn_wc_operation_t >() ); #endif } pysvn_module::~pysvn_module() { } Py::Object pysvn_module::new_client( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, name_config_dir }, { false, name_result_wrappers }, { false, NULL } }; FunctionArguments args( "Client", args_desc, a_args, a_kws ); args.check(); std::string config_dir = args.getUtf8String( name_config_dir, "" ); Py::Dict result_wrappers_dict; if( args.hasArg( name_result_wrappers ) ) result_wrappers_dict = args.getArg( name_result_wrappers ); return Py::asObject( new pysvn_client( *this, config_dir, result_wrappers_dict ) ); } Py::Object pysvn_module::new_transaction( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_repos_path }, { true, name_transaction_name }, { false, name_is_revision }, { false, name_result_wrappers }, { false, NULL } }; FunctionArguments args( "Transaction", args_desc, a_args, a_kws ); args.check(); std::string repos_path = args.getUtf8String( name_repos_path ); std::string transaction_name = args.getUtf8String( name_transaction_name ); bool is_revision = args.getBoolean( name_is_revision, false ); Py::Dict result_wrappers_dict; if( args.hasArg( name_result_wrappers ) ) result_wrappers_dict = args.getArg( name_result_wrappers ); pysvn_transaction *t = new pysvn_transaction( *this, result_wrappers_dict ); Py::Object result( Py::asObject( t ) ); t->init( repos_path, transaction_name, is_revision ); return result; } Py::Object pysvn_module::new_revision( const Py::Tuple &a_args, const Py::Dict &a_kws ) { // // support only one of the following: // revision( kind ) // revision( kind, number ) // revision( kind, date ) // static argument_description args_desc_generic[] = { { true, name_kind }, { false, name_date }, { false, name_number }, { false, NULL } }; FunctionArguments args_generic( "Revision", args_desc_generic, a_args, a_kws ); args_generic.check(); Py::ExtensionObject< pysvn_enum_value > py_kind( args_generic.getArg( name_kind ) ); svn_opt_revision_kind kind = svn_opt_revision_kind( py_kind.extensionObject()->m_value ); pysvn_revision *rev = NULL; switch( kind ) { case svn_opt_revision_date: { static argument_description args_desc_date[] = { { true, name_kind }, { true, name_date }, { false, NULL } }; FunctionArguments args_date( "Revision", args_desc_date, a_args, a_kws ); args_date.check(); Py::Float date( args_date.getArg( name_date ) ); rev = new pysvn_revision( kind, double(date) ); break; } case svn_opt_revision_number: { static argument_description args_desc_number[] = { { true, name_kind }, { true, name_number }, { false, NULL } }; FunctionArguments args_number( "Revision", args_desc_number, a_args, a_kws ); args_number.check(); Py::Int revnum( args_number.getArg( name_number ) ); rev = new pysvn_revision( kind, 0, long( revnum ) ); break; } default: { static argument_description args_desc_other[] = { { true, name_kind }, { false, NULL } }; FunctionArguments args_other( "Revision", args_desc_other, a_args, a_kws ); args_other.check(); rev = new pysvn_revision( kind ); } } return Py::asObject( rev ); } //-------------------------------------------------------------------------------- // // PythonAllowThreads provides a exception safe // wrapper for the C idiom: // // Py_BEGIN_ALLOW_THREADS // ...Do some blocking I/O operation... // Py_END_ALLOW_THREADS // // IN C++ use PythonAllowThreads in main code: //{ // PythonAllowThreads main_permission; // ...Do some blocking I/O operation that may throw //} // allow d'tor grabs the lock // // In C++ use PythonDisallowTheads in callback code: //{ // PythonDisallowTheads permission( main_permission ); // ... Python operations that may throw //} // allow d'tor to release the lock // //-------------------------------------------------------------------------------- PythonAllowThreads::PythonAllowThreads( pysvn_context &_callbacks ) : m_callbacks( _callbacks ) , m_save( NULL ) { m_callbacks.setPermission( *this ); allowOtherThreads(); } PythonAllowThreads::~PythonAllowThreads() { if( m_save != NULL ) allowThisThread(); m_callbacks.clearPermission(); } void PythonAllowThreads::allowOtherThreads() { #if defined( WITH_THREAD ) assert( m_save == NULL ); m_save = PyEval_SaveThread(); assert( m_save != NULL ); #endif } void PythonAllowThreads::allowThisThread() { #if defined( WITH_THREAD ) assert( m_save != NULL ); PyEval_RestoreThread( m_save ); m_save = NULL; #endif } PythonDisallowThreads::PythonDisallowThreads( PythonAllowThreads *_permission ) : m_permission( _permission ) { m_permission->allowThisThread(); } PythonDisallowThreads::~PythonDisallowThreads() { m_permission->allowOtherThreads(); } //-------------------------------------------------------------------------------- #if defined(WIN32) #define EXPORT_SYMBOL __declspec( dllexport ) #else #define EXPORT_SYMBOL #endif static pysvn_module* the_pysvn_module = NULL; #if PY_MAJOR_VERSION >= 3 extern "C" EXPORT_SYMBOL PyObject *PyInit__pysvn() { the_pysvn_module = new pysvn_module; return the_pysvn_module->module().ptr(); } // symbol required for the debug version extern "C" EXPORT_SYMBOL PyObject *PyInit__pysvn_d() { return PyInit__pysvn(); } #else extern "C" EXPORT_SYMBOL void init_pysvn() { the_pysvn_module = new pysvn_module; } // symbol required for the debug version extern "C" EXPORT_SYMBOL void init_pysvn_d() { init_pysvn(); } #endif pysvn-1.9.22/Source/pysvncmd.cmd000644 000765 000024 00000000313 12714331335 017035 0ustar00barrystaff000000 000000 echo on setlocal set PYVER=%1 set PYTHONPATH=%BUILDER_TOP_DIR%/Source:%BUILDER_TOP_DIR%/Examples/Client py -%PY_VER% %BUILDER_TOP_DIR%/Examples/Client/svn_cmd.py %2 %3 %4 %5 %6 %7 %8 %9 endlocal pysvn-1.9.22/Source/run_devenv.cmd000644 000765 000024 00000000347 11264373560 017361 0ustar00barrystaff000000 000000 if "%SVN_VER_MAJ_MIN%" == "1.4" devenv pysvn-for-svn-1-4-msvc71.sln /useenv if "%SVN_VER_MAJ_MIN%" == "1.5" devenv pysvn-for-svn-1-5-msvc71.sln /useenv if "%SVN_VER_MAJ_MIN%" == "1.6" devenv pysvn-for-svn-1-6-msvc71.sln /useenv pysvn-1.9.22/Source/pysvn_profile.cpp000644 000765 000024 00000001026 11132131027 020077 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_profile.cpp // // Functions to help profile performance of the pysvn code // #ifdef WIN32 #include int elapse_time() { return GetTickCount(); } #endif pysvn-1.9.22/Source/pysvn_svnenv.cpp000644 000765 000024 00000046504 13572167605 020015 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #include "pysvn_svnenv.hpp" #include "svn_config.h" #include "svn_pools.h" #include "CXX/Objects.hxx" //-------------------------------------------------------------------------------- // // SvnException // //-------------------------------------------------------------------------------- SvnException::SvnException( svn_error_t *error ) : m_message() , m_exception_arg() { std::string whole_message; // set the error to be a list of (code, message) tuples Py::List error_list; while( error != NULL ) { Py::Tuple t( 2 ); if( !whole_message.empty() ) { whole_message += "\n"; } if( error->message != NULL ) { t[0] = Py::String( error->message ); whole_message += error->message; } else { char buffer[256]; buffer[0] = '\0'; svn_strerror( error->apr_err, buffer, sizeof( buffer ) ); whole_message += buffer; t[0] = Py::String( buffer ); } t[1] = Py::Int( error->apr_err ); error_list.append( t ); error = error->child; } m_message = Py::String( whole_message ); Py::Tuple arg_list(2); arg_list[0] = m_message; arg_list[1] = error_list; m_exception_arg = arg_list; svn_error_clear( error ); } SvnException::SvnException( const SvnException &other ) : m_code( other.m_code ) , m_message( other.m_message ) , m_exception_arg( other.m_exception_arg ) { } SvnException::~SvnException() { } Py::String &SvnException::message() { return m_message; } apr_status_t SvnException::code() { return m_code; } Py::Object &SvnException::pythonExceptionArg( int style ) { if( style == 1 ) { return m_exception_arg; } else { return m_message; } } //-------------------------------------------------------------------------------- // // SvnContext // //-------------------------------------------------------------------------------- #if defined( PYSVN_HAS_CONTEXT_LOG_MSG2 ) extern "C" svn_error_t *handlerLogMsg2 ( const char **log_msg, const char **tmp_file, const apr_array_header_t *commit_items, void *baton, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); std::string msg; if (!context->contextGetLogMessage( msg ) ) return svn_error_create( SVN_ERR_CANCELLED, NULL, "" ); *log_msg = svn_string_ncreate( msg.data(), msg.length(), pool )->data; *tmp_file = NULL; return SVN_NO_ERROR; } #else extern "C" svn_error_t *handlerLogMsg ( const char **log_msg, const char **tmp_file, apr_array_header_t *commit_items, void *baton, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); std::string msg; if (!context->contextGetLogMessage( msg ) ) return svn_error_create( SVN_ERR_CANCELLED, NULL, "" ); *log_msg = svn_string_ncreate( msg.data(), msg.length(), pool )->data; *tmp_file = NULL; return SVN_NO_ERROR; } #endif #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) extern "C" void handlerNotify2 ( void *baton, const svn_wc_notify_t *notify, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); context->contextNotify2( notify, pool ); } #else extern "C" void handlerNotify ( void * baton, const char *path, svn_wc_notify_action_t action, svn_node_kind_t kind, const char *mime_type, svn_wc_notify_state_t content_state, svn_wc_notify_state_t prop_state, svn_revnum_t revision ) { pysvn_bpt(); SvnContext *context = SvnContext::castBaton( baton ); context->contextNotify( path, action, kind, mime_type, content_state, prop_state, revision ); } #endif #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) extern "C" void handlerProgress ( apr_off_t progress, apr_off_t total, void *baton, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); context->contextProgress( progress, total ); } #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) extern "C" svn_error_t *handlerConflictResolver ( svn_wc_conflict_result_t **result, const svn_wc_conflict_description_t *description, void *baton, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); if( context->contextConflictResolver( result, description, pool ) ) return SVN_NO_ERROR; else return svn_error_create( SVN_ERR_CANCELLED, NULL, "cancelled by user" ); } #endif extern "C" svn_error_t *handlerCancel ( void * baton ) { SvnContext *context = SvnContext::castBaton( baton ); if( context->contextCancel() ) return svn_error_create( SVN_ERR_CANCELLED, NULL, "cancelled by user" ); else return SVN_NO_ERROR; } extern "C" svn_error_t *handlerSimplePrompt ( svn_auth_cred_simple_t **cred, void *baton, const char *a_realm, const char *a_username, svn_boolean_t a_may_save, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); bool may_save = a_may_save != 0; if( a_realm == NULL ) a_realm = ""; if( a_username == NULL ) a_username = ""; std::string realm( a_realm ); std::string username( a_username ); std::string password; if( !context->contextGetLogin( realm, username, password, may_save ) ) return svn_error_create( SVN_ERR_CANCELLED, NULL, "" ); svn_auth_cred_simple_t *lcred = (svn_auth_cred_simple_t *)apr_palloc( pool, sizeof( svn_auth_cred_simple_t ) ); lcred->username = svn_string_ncreate( username.data(), username.length(), pool )->data; lcred->password = svn_string_ncreate( password.data(), password.length(), pool )->data; // tell svn if the credentials need to be saved lcred->may_save = may_save; *cred = lcred; return SVN_NO_ERROR; } extern "C" svn_error_t *handlerSslServerTrustPrompt ( svn_auth_cred_ssl_server_trust_t **cred, void *baton, const char *a_realm, apr_uint32_t failures, const svn_auth_ssl_server_cert_info_t *info, svn_boolean_t may_save, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); apr_uint32_t accepted_failures = failures; bool accept_permanently = true; if( a_realm == NULL ) a_realm = ""; std::string realm( a_realm ); if( !context->contextSslServerTrustPrompt( *info, realm, accepted_failures, accept_permanently ) ) { *cred = NULL; return SVN_NO_ERROR; } svn_auth_cred_ssl_server_trust_t *new_cred = (svn_auth_cred_ssl_server_trust_t *) apr_palloc( pool, sizeof (svn_auth_cred_ssl_server_trust_t) ); if( accept_permanently ) { new_cred->may_save = 1; } new_cred->accepted_failures = accepted_failures; *cred = new_cred; return SVN_NO_ERROR; } extern "C" svn_error_t *handlerSslClientCertPrompt ( svn_auth_cred_ssl_client_cert_t **cred, void *baton, const char *a_realm, svn_boolean_t a_may_save, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); if( a_realm == NULL ) a_realm = ""; std::string realm( a_realm ); bool may_save = a_may_save != 0; std::string cert_file; if( !context->contextSslClientCertPrompt( cert_file, realm, may_save ) ) return svn_error_create (SVN_ERR_CANCELLED, NULL, ""); svn_auth_cred_ssl_client_cert_t *new_cred = (svn_auth_cred_ssl_client_cert_t*) apr_palloc (pool, sizeof (svn_auth_cred_ssl_client_cert_t)); new_cred->cert_file = svn_string_ncreate( cert_file.data(), cert_file.length(), pool )->data; new_cred->may_save = may_save; *cred = new_cred; return SVN_NO_ERROR; } extern "C" svn_error_t *handlerSslClientCertPwPrompt ( svn_auth_cred_ssl_client_cert_pw_t **cred, void *baton, const char *a_realm, svn_boolean_t a_may_save, apr_pool_t *pool ) { SvnContext *context = SvnContext::castBaton( baton ); if( a_realm == NULL ) a_realm = ""; std::string realm( a_realm ); std::string password; bool may_save = a_may_save != 0; if( !context->contextSslClientCertPwPrompt( password, realm, may_save ) ) return svn_error_create( SVN_ERR_CANCELLED, NULL, "" ); svn_auth_cred_ssl_client_cert_pw_t *new_cred = (svn_auth_cred_ssl_client_cert_pw_t *) apr_palloc (pool, sizeof (svn_auth_cred_ssl_client_cert_pw_t)); new_cred->password = svn_string_ncreate( password.data(), password.length(), pool )->data; new_cred->may_save = may_save; *cred = new_cred; return SVN_NO_ERROR; } SvnContext::SvnContext( const std::string &config_dir_str ) : m_pool( NULL ) , m_context( NULL ) , m_config_dir( NULL ) { memset( &m_context, 0, sizeof( m_context ) ); apr_pool_create( &m_pool, NULL ); #if defined( PYSVN_HAS_CLIENT_CREATE_CONTEXT2 ) svn_client_create_context2( &m_context, NULL, m_pool ); #else svn_client_create_context( &m_context, m_pool ); #endif if( !config_dir_str.empty() ) { m_config_dir = svn_dirent_canonicalize( config_dir_str.c_str(), m_pool ); } svn_config_ensure( m_config_dir, m_pool ); // get the config based on the config dir passed in svn_config_get_config( &m_context->config, m_config_dir, m_pool ); svn_auth_provider_object_t *provider = NULL; apr_array_header_t *providers = apr_array_make( m_pool, 11, sizeof( svn_auth_provider_object_t * ) ); #if defined( PYSVN_HAS_SVN_AUTH_PROVIDERS ) // simple providers # if defined( PYSVN_HAS_SVN_AUTH_GET_PLATFORM_SPECIFIC_CLIENT_PROVIDERS ) svn_config_t *cfg = (svn_config_t *)apr_hash_get ( m_context->config, SVN_CONFIG_CATEGORY_CONFIG, APR_HASH_KEY_STRING ); svn_auth_get_platform_specific_client_providers( &providers, cfg, m_pool ); # else # if defined( WIN32 ) svn_auth_get_windows_simple_provider(&provider, m_pool); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; # endif # if defined( DARWIN ) svn_auth_get_keychain_simple_provider(&provider, m_pool); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; # endif # endif # if defined( PYSVN_HAS_AUTH_GET_SIMPLE_PROVIDER2 ) svn_auth_get_simple_provider2( &provider, NULL, NULL, m_pool ); # else svn_auth_get_simple_provider( &provider, m_pool ); # endif *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_auth_get_username_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_auth_get_simple_prompt_provider( &provider, handlerSimplePrompt, this, 1000000, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; // ssl providers // order is important - file first then prompt providers svn_auth_get_ssl_server_trust_file_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_auth_get_ssl_client_cert_file_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; # if defined( PYSVN_HAS_AUTH_GET_SSL_CLIENT_CERT_PW_FILE_PROVIDER2 ) svn_auth_get_ssl_client_cert_pw_file_provider2( &provider, NULL, NULL, m_pool ); # else svn_auth_get_ssl_client_cert_pw_file_provider( &provider, m_pool ); # endif *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_auth_get_ssl_server_trust_prompt_provider( &provider, handlerSslServerTrustPrompt, this, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; svn_auth_get_ssl_client_cert_prompt_provider( &provider, handlerSslClientCertPrompt, this, 3, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; svn_auth_get_ssl_client_cert_pw_prompt_provider( &provider, handlerSslClientCertPwPrompt, this, 3, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; #else // Pre 1.4.0 version apr_array_header_t *providers = apr_array_make( m_pool, 8, sizeof( svn_auth_provider_object_t * ) ); // simple providers svn_auth_provider_object_t *provider = NULL; svn_client_get_simple_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_client_get_username_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_client_get_simple_prompt_provider( &provider, handlerSimplePrompt, this, 3, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; // ssl providers // order is important - file first then prompt providers svn_client_get_ssl_server_trust_file_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_client_get_ssl_client_cert_file_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_client_get_ssl_client_cert_pw_file_provider( &provider, m_pool ); *(svn_auth_provider_object_t **)apr_array_push( providers ) = provider; svn_client_get_ssl_server_trust_prompt_provider( &provider, handlerSslServerTrustPrompt, this, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; svn_client_get_ssl_client_cert_prompt_provider( &provider, handlerSslClientCertPrompt, this, 3, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; svn_client_get_ssl_client_cert_pw_prompt_provider( &provider, handlerSslClientCertPwPrompt, this, 3, m_pool ); *(svn_auth_provider_object_t **)apr_array_push (providers) = provider; #endif svn_auth_baton_t *auth_baton = NULL; svn_auth_open( &auth_baton, providers, m_pool ); // tell the auth functions where the config dir is svn_auth_set_parameter( auth_baton, SVN_AUTH_PARAM_CONFIG_DIR, m_config_dir ); m_context->auth_baton = auth_baton; #if defined( PYSVN_HAS_CONTEXT_LOG_MSG2 ) m_context->log_msg_func2 = handlerLogMsg2; m_context->log_msg_baton2 = this; #else m_context->log_msg_func = handlerLogMsg; m_context->log_msg_baton = this; #endif } void SvnContext::installCancel( bool install ) { if( install ) { m_context->cancel_func = handlerCancel; m_context->cancel_baton = this; } else { m_context->cancel_func = NULL; m_context->cancel_baton = NULL; } } void SvnContext::installNotify( bool install ) { if( install ) { #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) m_context->notify_func2 = handlerNotify2; m_context->notify_baton2 = this; #else m_context->notify_func = handlerNotify; m_context->notify_baton = this; #endif } else { #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) m_context->notify_func2 = NULL; m_context->notify_baton2 = NULL; #else m_context->notify_func = NULL; m_context->notify_baton = NULL; #endif } } #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) void SvnContext::installProgress( bool install ) { if( install ) { m_context->progress_func = handlerProgress; m_context->progress_baton = this; } else { m_context->progress_func = handlerProgress; m_context->progress_baton = this; } } #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) void SvnContext::installConflictResolver( bool install ) { if( install ) { m_context->conflict_func = handlerConflictResolver; m_context->conflict_baton = this; } else { m_context->conflict_func = NULL; m_context->conflict_baton = NULL; } } #endif SvnContext::~SvnContext() { if( m_pool ) { apr_pool_destroy( m_pool ); } } SvnContext::operator svn_client_ctx_t *() { return m_context; } svn_client_ctx_t *SvnContext::ctx() { return m_context; } // only use this pool for data that has a life time // that matches the life time of the context apr_pool_t *SvnContext::getContextPool() { return m_pool; } //-------------------------------------------------------------------------------- // // SvnTransaction // //-------------------------------------------------------------------------------- SvnTransaction::SvnTransaction() : m_pool( NULL ) , m_repos( NULL ) , m_fs( NULL ) , m_txn( NULL ) , m_txn_name( NULL ) , m_rev_id( SVN_INVALID_REVNUM ) { apr_pool_create( &m_pool, NULL ); } svn_error_t *SvnTransaction::init( const std::string &repos_path, const std::string &transaction_name, bool is_revision ) { svn_error_t *error; SvnPool scratch_pool( *this ); #if defined( PYSVN_HAS_REPOS_OPEN3 ) error = svn_repos_open3( &m_repos, repos_path.c_str(), NULL, m_pool, scratch_pool ); # elif defined( PYSNV_HAS_REPOS_OPEN2 ) error = svn_repos_open2( &m_repos, repos_path.c_str(), NULL, m_pool ); #else error = svn_repos_open( &m_repos, repos_path.c_str(), m_pool ); #endif if( error != NULL ) return error; m_fs = svn_repos_fs( m_repos ); // what is a warning function? // svn_fs_set_warning_func (m_fs, warning_func, NULL); if( is_revision ) { Py::String rev_name( transaction_name ); Py::Long long_val( rev_name ); m_rev_id = (long)long_val; if (! SVN_IS_VALID_REVNUM( m_rev_id )) return svn_error_create( SVN_ERR_CL_ARG_PARSING_ERROR, NULL, "invalid revision number supplied" ); } else { m_txn_name = apr_pstrdup( m_pool, transaction_name.c_str() ); error = svn_fs_open_txn( &m_txn, m_fs, m_txn_name, m_pool ); } return error; } SvnTransaction::~SvnTransaction() { } svn_error_t *SvnTransaction::root( svn_fs_root_t **root, apr_pool_t *pool ) { if( is_revision() ) return svn_fs_revision_root( root, m_fs, m_rev_id, pool ); else return svn_fs_txn_root( root, m_txn, pool ); } SvnTransaction::operator svn_fs_txn_t *() { return m_txn; } SvnTransaction::operator svn_fs_t *() { return m_fs; } SvnTransaction::operator svn_repos_t *() { return m_repos; } svn_fs_txn_t *SvnTransaction::transaction() { return m_txn; } svn_revnum_t SvnTransaction::revision() { return m_rev_id; } //-------------------------------------------------------------------------------- // // Pool // //-------------------------------------------------------------------------------- SvnPool::SvnPool( SvnContext &ctx ) : m_pool( NULL ) { m_pool = svn_pool_create( NULL ); } SvnPool::SvnPool( SvnTransaction &txn ) : m_pool( NULL ) { m_pool = svn_pool_create( NULL ); } SvnPool::~SvnPool() { if( m_pool != NULL ) { svn_pool_destroy( m_pool ); } } SvnPool::operator apr_pool_t *() const { return m_pool; } #if 0 // keep around as it useful for debugging pysvn static const char *toHex( unsigned int num ) { static char buffer[9]; for( int i=0; i<8; i++ ) { buffer[i] = "0123456789abcdef"[ (num >> (32-(i+1)*4)) & 0x0f ]; } buffer[8] = '\0'; return buffer; } #endif pysvn-1.9.22/Source/pysvncmd.sh000755 000765 000024 00000000662 12710113354 016711 0ustar00barrystaff000000 000000 #!/bin/bash -x PY_VER=${1:?py-ver} SVN_VER=${2:?svn-ver} shift shift case "$(uname -s)" in Darwin) export LD_LIBRARY_PATH=/usr/local/svn-${SVN_VER}/lib:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib ;; *) ;; esac export PYTHONPATH=${BUILDER_TOP_DIR}/Source:${BUILDER_TOP_DIR}/Examples/Client python${PY_VER} ${BUILDER_TOP_DIR}/Examples/Client/svn_cmd.py "$@" pysvn-1.9.22/Source/pysvn_client_cmd_changelist.cpp000644 000765 000024 00000016774 12705223706 022776 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_prop.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "pysvn_static_strings.hpp" #ifdef PYSVN_HAS_CLIENT_ADD_TO_CHANGELIST Py::Object pysvn_client::cmd_add_to_changelist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { true, name_changelist }, { false, name_depth }, { false, name_changelists }, { false, NULL } }; FunctionArguments args( "add_to_changelist", args_desc, a_args, a_kws ); args.check(); std::string type_error_message; SvnPool pool( m_context ); try { apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); std::string changelist( args.getUtf8String( name_changelist ) ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, svn_depth_files ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_add_to_changelist ( targets, changelist.c_str(), depth, changelists, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif #ifdef PYSVN_HAS_CLIENT_GET_CHANGELIST extern "C" svn_error_t *changelistReceiver ( void *baton_, const char *path, const char *changelist, apr_pool_t *pool ); class ChangelistBaton { public: ChangelistBaton( PythonAllowThreads *permission, SvnPool &pool, Py::List &changelist_list ) : m_permission( permission ) , m_pool( pool ) , m_changelist_list( changelist_list ) {} ~ChangelistBaton() {} svn_changelist_receiver_t callback() { return &changelistReceiver; } void *baton() { return static_cast< void * >( this ); } static ChangelistBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; SvnPool &m_pool; Py::List &m_changelist_list; }; extern "C" svn_error_t *changelistReceiver ( void *baton_, const char *path, const char *changelist, apr_pool_t *pool ) { ChangelistBaton *baton = ChangelistBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); if( path == NULL || changelist == NULL ) { return NULL; } Py::Tuple values( 2 ); values[0] = Py::String( path ); values[1] = Py::String( changelist ); baton->m_changelist_list.append( values ); return NULL; } Py::Object pysvn_client::cmd_get_changelist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_depth }, { false, name_changelists }, { false, NULL } }; FunctionArguments args( "get_changelists", args_desc, a_args, a_kws ); args.check(); std::string type_error_message; SvnPool pool( m_context ); try { std::string path( args.getUtf8String( name_path ) ); std::string norm_path( svnNormalisedIfPath( path, pool ) ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); //for (int j = 0; j < changelists->nelts; ++j) //{ // const char *name = ((const char **)changelists->elts)[j]; // std::cout << "QQQ: get changelist=" << name << std::endl; //} } svn_depth_t depth = args.getDepth( name_depth, svn_depth_files ); Py::List changelist_list; try { checkThreadPermission(); PythonAllowThreads permission( m_context ); ChangelistBaton baton( &permission, pool, changelist_list ); svn_error_t *error = svn_client_get_changelists ( norm_path.c_str(), changelists, depth, baton.callback(), baton.baton(), m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return changelist_list; } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif #ifdef PYSVN_HAS_CLIENT_REMOVE_FROM_CHANGELISTS Py::Object pysvn_client::cmd_remove_from_changelists( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_depth }, { false, name_changelists }, { false, NULL } }; FunctionArguments args( "remove_from_changelists", args_desc, a_args, a_kws ); args.check(); std::string type_error_message; SvnPool pool( m_context ); try { apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, svn_depth_files ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_remove_from_changelists ( targets, depth, changelists, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif pysvn-1.9.22/Source/pysvn_client_cmd_merge.cpp000644 000765 000024 00000046336 12704714473 021756 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_merge.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "svn_path.h" #include "svn_config.h" #include "svn_sorts.h" #include "pysvn_static_strings.hpp" static const char *g_utf_8 = "utf-8"; Py::Object pysvn_client::cmd_merge( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path1 }, { true, name_revision1 }, { true, name_url_or_path2 }, { true, name_revision2 }, { true, name_local_path }, { false, name_force }, { false, name_recurse }, { false, name_notice_ancestry }, { false, name_dry_run }, #if defined( PYSVN_HAS_CLIENT_MERGE2 ) { false, name_merge_options }, #endif #if defined( PYSVN_HAS_CLIENT_MERGE3 ) { false, name_depth }, { false, name_record_only }, #endif #if defined( PYSVN_HAS_CLIENT_MERGE4 ) { false, name_allow_mixed_revisions }, #endif #if defined( PYSVN_HAS_CLIENT_MERGE5 ) { false, name_ignore_mergeinfo }, #endif { false, NULL } }; FunctionArguments args( "merge", args_desc, a_args, a_kws ); args.check(); std::string path1( args.getUtf8String( name_url_or_path1 ) ); svn_opt_revision_t revision1 = args.getRevision( name_revision1, svn_opt_revision_head ); std::string path2( args.getUtf8String( name_url_or_path2 ) ); svn_opt_revision_t revision2 = args.getRevision( name_revision2, svn_opt_revision_head ); std::string local_path( args.getUtf8String( name_local_path ) ); bool force = args.getBoolean( name_force, false ); #if defined( PYSVN_HAS_CLIENT_MERGE3 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); bool record_only = args.getBoolean( name_record_only, false ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool notice_ancestry = args.getBoolean( name_notice_ancestry, false ); bool dry_run = args.getBoolean( name_dry_run, false ); #if defined( PYSVN_HAS_CLIENT_MERGE4 ) bool allow_mixed_revisions = args.getBoolean( name_allow_mixed_revisions, false ); #endif #if defined( PYSVN_HAS_CLIENT_MERGE5 ) bool ignore_mergeinfo = args.getBoolean( name_ignore_mergeinfo, !notice_ancestry ); #endif #if defined( PYSVN_HAS_CLIENT_MERGE2 ) Py::List merge_options_list; if( args.hasArg( name_merge_options ) ) { merge_options_list = args.getArg( name_merge_options ); for( size_t i=0; i 0 ) { merge_options = apr_array_make( pool, merge_options_list.length(), sizeof( const char * ) ); for( size_t i=0; i 0 ) { merge_options = apr_array_make( pool, merge_options_list.length(), sizeof( const char * ) ); for( size_t i=0; i( apr_palloc( pool, sizeof(*range) ) ); if( tuple_range.length() != 2 ) { std::string msg = "merge_peg2() expecting tuple with 2 values in ranges_to_merge list"; throw Py::AttributeError( msg ); } { Py::Object obj( tuple_range[0] ); if( pysvn_revision::check( obj ) ) { pysvn_revision *rev = static_cast( obj.ptr() ); range->start = rev->getSvnRevision(); revisionKindCompatibleCheck( is_url, range->start, name_ranges_to_merge, name_sources ); } else { std::string msg = "merge_peg2() expecting revision for 1st tuple value in sources list"; throw Py::AttributeError( msg ); } } { Py::Object obj( tuple_range[1] ); if( pysvn_revision::check( obj ) ) { pysvn_revision *rev = static_cast( obj.ptr() ); range->end = rev->getSvnRevision(); revisionKindCompatibleCheck( is_url, range->end, name_ranges_to_merge, name_sources ); } else { std::string msg = "merge_peg2() expecting revision for 2nd tuple value in sources list"; throw Py::AttributeError( msg ); } } APR_ARRAY_PUSH( ranges_to_merge, svn_opt_revision_range_t *) = range; } try { std::string norm_sources( svnNormalisedIfPath( sources, pool ) ); std::string norm_target_wcpath( svnNormalisedIfPath( target_wcpath, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_MERGE_PEG5 ) svn_error_t *error = svn_client_merge_peg5 ( norm_sources.c_str(), ranges_to_merge, &peg_revision, norm_target_wcpath.c_str(), depth, ignore_mergeinfo, !notice_ancestry, // diff_ignore_ancestry force, // force_delete record_only, dry_run, allow_mixed_revisions, merge_options, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_MERGE_PEG4 ) svn_error_t *error = svn_client_merge_peg4 ( norm_sources.c_str(), ranges_to_merge, &peg_revision, norm_target_wcpath.c_str(), depth, !notice_ancestry, force, // force_delete record_only, dry_run, allow_mixed_revisions, merge_options, m_context, pool ); #else svn_error_t *error = svn_client_merge_peg3 ( norm_sources.c_str(), ranges_to_merge, &peg_revision, norm_target_wcpath.c_str(), depth, !notice_ancestry, force, record_only, dry_run, merge_options, m_context, pool ); #endif permission.allowThisThread(); if( error != 0 ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #endif #if defined( PYSVN_HAS_CLIENT_MERGE_PEG ) Py::Object pysvn_client::cmd_merge_peg( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { true, name_revision1 }, { true, name_revision2 }, { true, name_peg_revision }, { true, name_local_path }, { false, name_recurse }, { false, name_notice_ancestry }, { false, name_force }, { false, name_dry_run }, #if defined( PYSVN_HAS_CLIENT_MERGE_PEG2 ) { false, name_merge_options }, #endif { false, NULL } }; FunctionArguments args( "merge_peg", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_t revision1 = args.getRevision( name_revision1, svn_opt_revision_head ); svn_opt_revision_t revision2 = args.getRevision( name_revision2, svn_opt_revision_head ); svn_opt_revision_t peg_revision = args.getRevision( name_revision2, revision2 ); std::string local_path( args.getUtf8String( name_local_path ) ); bool force = args.getBoolean( name_force, false ); bool recurse = args.getBoolean( name_recurse, true ); bool notice_ancestry = args.getBoolean( name_notice_ancestry, false ); bool dry_run = args.getBoolean( name_dry_run, false ); #if defined( PYSVN_HAS_CLIENT_MERGE_PEG2 ) Py::List merge_options_list; if( args.hasArg( name_merge_options ) ) { merge_options_list = args.getArg( name_merge_options ); for( size_t i=0; i 0 ) { merge_options = apr_array_make( pool, merge_options_list.length(), sizeof( const char * ) ); for( size_t i=0; i 0 ) { merge_options = apr_array_make( pool, merge_options_list.length(), sizeof( const char * ) ); for( size_t i=0; i causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" #if defined( PYSVN_HAS_CLIENT_PATCH ) /* svn_error_t * svn_client_patch(const char *patch_abspath, const char *wc_dir_abspath, svn_boolean_t dry_run, int strip_count, svn_boolean_t reverse, svn_boolean_t ignore_whitespace, svn_boolean_t remove_tempfiles, svn_client_patch_func_t patch_func, void *patch_baton, svn_client_ctx_t *ctx, apr_pool_t *scratch_pool); */ static svn_error_t *patch_callback( void *baton, svn_boolean_t *filtered, const char *canon_path_from_patchfile, const char *patch_abspath, const char *reject_abspath, apr_pool_t *scratch_pool ) { *filtered = FALSE; return NULL; } Py::Object pysvn_client::cmd_patch( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_patch_abspath }, { true, name_wc_dir_abspath }, { false, name_strip_count }, { false, name_dry_run }, { false, name_reverse }, { false, name_ignore_whitespace }, { false, name_remove_tempfiles }, { false, NULL } }; FunctionArguments args( "patch", args_desc, a_args, a_kws ); args.check(); std::string patch_abspath( args.getUtf8String( name_patch_abspath ) ); std::string wc_dir_abspath( args.getUtf8String( name_wc_dir_abspath ) ); int strip_count = args.getInteger( name_strip_count, 0 ); if( strip_count < 0 ) { throw Py::ValueError( "strip_count must be >= 0" ); } bool dry_run = args.getBoolean( name_dry_run, false ); bool ignore_whitespace = args.getBoolean( name_ignore_whitespace, false ); bool remove_tempfiles = args.getBoolean( name_remove_tempfiles, false ); bool reverse = args.getBoolean( name_reverse, false ); SvnPool pool( m_context ); try { std::string norm_patch_abspath( svnNormalisedIfPath( patch_abspath, pool ) ); std::string norm_wc_dir_abspath( svnNormalisedIfPath( wc_dir_abspath, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_patch ( norm_patch_abspath.c_str(), norm_wc_dir_abspath.c_str(), dry_run, strip_count, reverse, ignore_whitespace, remove_tempfiles, patch_callback, NULL, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // cannot convert to Unicode as we have no idea of the encoding of the bytes return Py::None(); } #endif pysvn-1.9.22/Source/pysvn_client_cmd_export.cpp000644 000765 000024 00000024106 12703477367 022176 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_export.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" static const char *g_utf_8 = "utf-8"; Py::Object pysvn_client::cmd_export( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_src_url_or_path }, { true, name_dest_path }, { false, name_force }, { false, name_revision }, #if defined( PYSVN_HAS_CLIENT_EXPORT2 ) { false, name_native_eol }, #endif #if defined( PYSVN_HAS_CLIENT_EXPORT3 ) { false, name_ignore_externals }, { false, name_recurse }, { false, name_peg_revision }, #endif #if defined( PYSVN_HAS_CLIENT_EXPORT4 ) { false, name_depth }, #endif #if defined( PYSVN_HAS_CLIENT_EXPORT5 ) { false, name_ignore_keywords }, #endif { false, NULL } }; FunctionArguments args( "export", args_desc, a_args, a_kws ); args.check(); std::string src_path( args.getUtf8String( name_src_url_or_path ) ); std::string dest_path( args.getUtf8String( name_dest_path ) ); bool is_url = is_svn_url( src_path ); bool force = args.getBoolean( name_force, false ); svn_opt_revision_t revision; if( is_url ) revision = args.getRevision( name_revision, svn_opt_revision_head ); else revision = args.getRevision( name_revision, svn_opt_revision_working ); #if defined( PYSVN_HAS_CLIENT_EXPORT2 ) const char *native_eol = NULL; if( args.hasArg( name_native_eol ) ) { Py::Object native_eol_obj = args.getArg( name_native_eol ); if( native_eol_obj != Py::None() ) { Py::String eol_py_str( native_eol_obj ); std::string eol_str = eol_py_str.as_std_string( g_utf_8 ); if( eol_str == "CR" ) native_eol = "CR"; else if( eol_str == "CRLF" ) native_eol = "CRLF"; else if( eol_str == "LF" ) native_eol = "LF"; else throw Py::ValueError( "native_eol must be one of None, \"LF\", \"CRLF\" or \"CR\"" ); } } #endif #if defined( PYSVN_HAS_CLIENT_EXPORT3 ) #if defined( PYSVN_HAS_CLIENT_EXPORT4 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool ignore_externals = args.getBoolean( name_ignore_externals, false ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); #endif #if defined( PYSVN_HAS_CLIENT_EXPORT5 ) bool ignore_keywords = args.getBoolean( name_ignore_keywords, false ); #endif revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); svn_revnum_t revnum = 0; SvnPool pool( m_context ); try { std::string norm_src_path( svnNormalisedIfPath( src_path, pool ) ); std::string norm_dest_path( svnNormalisedIfPath( dest_path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_EXPORT5 ) svn_error_t * error = svn_client_export5 ( &revnum, norm_src_path.c_str(), norm_dest_path.c_str(), &peg_revision, &revision, force, ignore_externals, ignore_keywords, depth, native_eol, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_EXPORT4 ) svn_error_t * error = svn_client_export4 ( &revnum, norm_src_path.c_str(), dest_path.c_str(), &peg_revision, &revision, force, ignore_externals, depth, native_eol, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_EXPORT3 ) svn_error_t * error = svn_client_export3 ( &revnum, norm_src_path.c_str(), dest_path.c_str(), &peg_revision, &revision, force, ignore_externals, recurse, native_eol, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_EXPORT2 ) svn_error_t * error = svn_client_export2 ( &revnum, norm_src_path.c_str(), dest_path.c_str(), &revision, force, native_eol, m_context, pool ); #else svn_error_t * error = svn_client_export ( &revnum, norm_src_path.c_str(), dest_path.c_str(), &revision, force, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); } Py::Object pysvn_client::cmd_import( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { true, name_url }, { true, name_log_message }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_IMPORT2 ) { false, name_ignore }, #endif #if defined( PYSVN_HAS_CLIENT_IMPORT3 ) { false, name_depth }, { false, name_ignore_unknown_node_types }, { false, name_revprops }, #endif #if defined( PYSVN_HAS_CLIENT_IMPORT5 ) { false, name_autoprops }, #endif { false, NULL } }; FunctionArguments args( "import_", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); std::string url( args.getUtf8String( name_url ) ); std::string message( args.getUtf8String( name_log_message ) ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_IMPORT3 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); bool ignore_unknown_node_types = args.getBoolean( name_ignore_unknown_node_types, false ); apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #else bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_IMPORT2 ) bool ignore = args.getBoolean( name_ignore, false ); #endif #if defined( PYSVN_HAS_CLIENT_IMPORT5 ) bool autoprops = args.getBoolean( name_autoprops, true ); #endif #if defined( PYSVN_HAS_CLIENT_IMPORT4 ) CommitInfoResult commit_info( pool ); #else pysvn_commit_info_t *commit_info = NULL; #endif try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); std::string norm_url( svnNormalisedUrl( url, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); m_context.setLogMessage( message.c_str() ); #if defined( PYSVN_HAS_CLIENT_IMPORT5 ) svn_error_t *error = svn_client_import5 ( norm_path.c_str(), norm_url.c_str(), depth, !ignore, !autoprops, ignore_unknown_node_types, revprops, NULL, // filter_callback NULL, // filter_baton commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_IMPORT4 ) svn_error_t *error = svn_client_import4 ( norm_path.c_str(), norm_url.c_str(), depth, !ignore, ignore_unknown_node_types, revprops, commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_IMPORT3 ) svn_error_t *error = svn_client_import3 ( &commit_info, // changed type norm_path.c_str(), norm_url.c_str(), depth, !ignore, ignore_unknown_node_types, revprops, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_IMPORT2 ) svn_error_t *error = svn_client_import2 ( &commit_info, // changed type norm_path.c_str(), url.c_str(), !recurse, // non_recursive !ignore, m_context, pool ); #else svn_error_t *error = svn_client_import ( &commit_info, norm_path.c_str(), url.c_str(), !recurse, // non_recursive m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } #if defined( PYSVN_HAS_CLIENT_IMPORT4 ) return toObject( commit_info, m_wrapper_commit_info, m_commit_info_style ); #else return toObject( commit_info, m_commit_info_style ); #endif } pysvn-1.9.22/Source/build.cmd000644 000765 000024 00000003120 13510611326 016264 0ustar00barrystaff000000 000000 if not "%1" == "" set PY_VER=%1 if not "%2" == "" set SVN_VER_MAJ_MIN=%2 if not "%3" == "" set BUILD_ARCH=%3 if "%PY_VER%" == "" goto :eof if "%SVN_VER_MAJ_MIN%" == "" goto :eof if "%BUILD_ARCH%" == "" goto :eof if /i "%BUILD_ARCH%" EQU "win32" set BUILD_ARCH=Win32 if /i "%BUILD_ARCH%" EQU "win64" set BUILD_ARCH=Win64 rem restore the path on later runs if "%BUILD_SAVED_PATH%" NEQ "" PATH %BUILD_SAVED_PATH% if "%BUILD_SAVED_PATH%" EQU "" set BUILD_SAVED_PATH=%PATH% set SVN_VER_MAJ_DASH_MIN=%SVN_VER_MAJ_MIN:.=-% set PY_MAJ=%PY_VER:~0,1% set PY_MIN=%PY_VER:~2% echo on rem Save CWD pushd . pushd ..\..\ReleaseEngineering\Windows call build-config.cmd %PY_VER% %SVN_VER_MAJ_MIN% %BUILD_ARCH% popd set PYCXX=%BUILDER_TOP_DIR%\Import\pycxx-%PYCXX_VER% set PYTHONPATH=%BUILDER_TOP_DIR%\Source rem prove the python version selected works %PYTHON% -c "import sys;print( 'Info: Python Version %%s' %% sys.version )" echo SVN Version: svn --version --quiet rem restore original CWD popd if "%4" == "setup" goto :eof %PYTHON% setup.py configure --verbose --platform=%BUILD_ARCH% --pycxx-dir=%USERPROFILE%\Projects\PyCxx --distro-dir=%TARGET%\dist if exist pysvn\_pysvn* del pysvn\_pysvn* if ERRORLEVEL 1 goto :EOF nmake clean if ERRORLEVEL 1 goto :EOF nmake if ERRORLEVEL 1 goto :EOF echo fake dll >pysvn\fake.dll del pysvn\*.dll if ERRORLEVEL 1 goto :EOF xcopy /q C:\BuildRoot\%BUILD_ARCH%-VC-%VC_VER%-%SVN_VER%\dist\bin\*.dll pysvn if ERRORLEVEL 1 goto :EOF cd ..\Tests if ERRORLEVEL 1 goto :EOF nmake clean if ERRORLEVEL 1 goto :EOF nmake pysvn-1.9.22/Source/pysvn_static_strings.cpp000644 000765 000024 00000001424 11132131027 021501 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_static_strings.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #undef PYSVN_STATIC_PY_STRINGS_HPP #define PYSVN_STATIC_STRING( name, value ) const char name[] = value; #define PYSVN_STATIC_PY_STRING_P( name ) Py::String *name; #include "pysvn_static_strings.hpp" pysvn-1.9.22/Source/pysvn_transaction.cpp000644 000765 000024 00000060420 13331260703 020776 0ustar00barrystaff000000 000000 // // ==================================================================== // (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_transaction.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_docs.hpp" #include "pysvn_svnenv.hpp" #include "svn_path.h" #include "svn_sorts.h" #include "pysvn_static_strings.hpp" static void convertReposTree ( Py::Dict &dict, bool copy_info, svn_repos_node_t *node, const std::string &path, apr_pool_t *pool ); //-------------------------------------------------------------------------------- pysvn_transaction::pysvn_transaction ( pysvn_module &_module, Py::Dict result_wrappers ) : m_module( _module ) , m_transaction() , m_exception_style( 1 ) { } void pysvn_transaction::init ( const std::string &repos_path, const std::string &transaction_name, bool is_revision ) { svn_error_t *error = m_transaction.init( repos_path, transaction_name, is_revision ); if( error != NULL ) { SvnException e( error ); throw_client_error( e ); } } pysvn_transaction::~pysvn_transaction() { } void pysvn_transaction::throw_client_error( SvnException &e ) { throw Py::BaseException( m_module.client_error, e.pythonExceptionArg( m_exception_style ) ); } Py::Object pysvn_transaction::getattr( const char *_name ) { std::string name( _name ); // std::cout << "getattr( " << name << " )" << std::endl << std::flush; if( name == name___members__ ) { Py::List members; members.append( Py::String( name_exception_style ) ); return members; } if( name == name_exception_style ) return Py::Int( m_exception_style ); return getattr_default( _name ); } int pysvn_transaction::setattr( const char *_name, const Py::Object &value ) { std::string name( _name ); if( name == name_exception_style ) { Py::Int style( value ); if( style == 0l || style == 1l ) { m_exception_style = style; } else { throw Py::AttributeError( "exception_style value must be 0 or 1" ); } } else { std::string msg( "Unknown attribute: " ); msg += name; throw Py::AttributeError( msg ); } return 0; } Py::Object pysvn_transaction::cmd_cat( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, NULL } }; FunctionArguments args( "cat", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_transaction ); svn_stringbuf_t * stringbuf = svn_stringbuf_create( empty_string, pool ); svn_stream_t * stream = svn_stream_from_stringbuf( stringbuf, pool ); try { svn_error_t *error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); svn_stream_t * fstream; error = svn_fs_file_contents( &fstream, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); char buf[BUFSIZ]; apr_size_t len = BUFSIZ; do { #if defined( PYSVN_HAS_STREAM_READ_FULL ) error = svn_stream_read_full( fstream, buf, &len ); #else error = svn_stream_read( fstream, buf, &len ); #endif if( error != NULL ) throw SvnException( error ); error = svn_stream_write( stream, buf, &len ); if( error != NULL ) throw SvnException( error ); } while (len == BUFSIZ); } catch( SvnException &e ) { throw_client_error( e ); } // return the bytes as is to the application // we can assume nothing about them return Py::String( stringbuf->data, (int)stringbuf->len ); } Py::Object pysvn_transaction::cmd_changed( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, name_copy_info }, { false, name_base_dir }, { false, name_low_water_mark }, { false, name_send_deltas }, { false, NULL } }; FunctionArguments args( "changed", args_desc, a_args, a_kws ); args.check(); bool copy_info = args.getBoolean( name_copy_info, false ); bool send_deltas = args.getBoolean( name_send_deltas, false ); svn_revnum_t low_water_mark = args.getInteger( name_low_water_mark, SVN_INVALID_REVNUM ); std::string base_dir( args.getUtf8String( name_base_dir, "" ) ); SvnPool pool( m_transaction ); svn_repos_node_t *tree = NULL; try { svn_error_t *error; svn_revnum_t base_rev; if( m_transaction.is_revision() ) { base_rev = m_transaction.revision() - 1; } else { base_rev = svn_fs_txn_base_revision( m_transaction ); } if( !SVN_IS_VALID_REVNUM( base_rev ) ) { error = svn_error_create( SVN_ERR_FS_NO_SUCH_REVISION, NULL, "Transaction is not based on a revision" ); throw SvnException( error ); } // Get the base root. svn_fs_root_t *base_rev_root = NULL; error = svn_fs_revision_root( &base_rev_root, m_transaction, base_rev, pool ); if( error != NULL ) throw SvnException( error ); svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); // Request our editor const svn_delta_editor_t *editor = NULL; void *edit_baton = NULL; error = svn_repos_node_editor( &editor, &edit_baton, m_transaction, base_rev_root, txn_root, pool, pool ); if( error != NULL ) throw SvnException( error ); // Drive our editor error = svn_repos_replay2 ( txn_root, base_dir.c_str(), low_water_mark, send_deltas, editor, edit_baton, NULL, // authz_read_func NULL, // authz_read_baton pool ); if( error != NULL ) throw SvnException( error ); // Return the tree we just built tree = svn_repos_node_from_baton( edit_baton ); } catch( SvnException &e ) { throw_client_error( e ); } Py::Dict dict; convertReposTree( dict, copy_info, tree, empty_string, pool ); return dict; } Py::Object pysvn_transaction::cmd_list( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, name_path }, { false, NULL } }; FunctionArguments args( "list", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path, empty_string ) ); SvnPool pool( m_transaction ); apr_hash_t *dir_entries = NULL; try { svn_error_t *error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); svn_node_kind_t kind; error = svn_fs_check_path( &kind, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); if( kind == svn_node_none ) { error = svn_error_createf( SVN_ERR_FS_NOT_FOUND, NULL, "Path '%s' does not exist", path.c_str() ); throw SvnException( error ); } if( kind != svn_node_dir ) { error = svn_error_createf( SVN_ERR_FS_NOT_DIRECTORY, NULL, "Path '%s' is not a directory", path.c_str() ); throw SvnException( error ); } error = svn_fs_dir_entries( &dir_entries, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } return direntsToObject( dir_entries, pool ); } #if 0 Py::Object pysvn_transaction::cmd_diff( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, NULL } }; FunctionArguments args( "diff", args_desc, a_args, a_kws ); args.check(); return Py::None(); } #endif Py::Object pysvn_transaction::cmd_propdel( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_path }, { false, NULL } }; FunctionArguments args( "propdel", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_transaction ); try { svn_error_t * error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); svn_node_kind_t kind; error = svn_fs_check_path( &kind, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); if( kind == svn_node_none ) { error = svn_error_createf( SVN_ERR_FS_NOT_FOUND, NULL, "Path '%s' does not exist", path.c_str() ); throw SvnException( error ); } error = svn_fs_change_node_prop ( txn_root, path.c_str(), prop_name.c_str(), NULL, // delete value pool ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } return Py::None(); } Py::Object pysvn_transaction::cmd_propget( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_path }, { false, NULL } }; FunctionArguments args( "propget", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_transaction ); svn_string_t *prop_val = NULL; try { svn_error_t * error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); svn_node_kind_t kind; error = svn_fs_check_path( &kind, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); if( kind == svn_node_none ) { error = svn_error_createf( SVN_ERR_FS_NOT_FOUND, NULL, "Path '%s' does not exist", path.c_str() ); throw SvnException( error ); } error = svn_fs_node_prop( &prop_val, txn_root, path.c_str(), prop_name.c_str(), pool ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } if( prop_val == NULL ) { return Py::None(); } else { return Py::String( prop_val->data, prop_val->len, name_utf8 ); } } Py::Object pysvn_transaction::cmd_proplist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, NULL } }; FunctionArguments args( "proplist", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_transaction); apr_hash_t *props = NULL; try { svn_error_t * error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); svn_node_kind_t kind; error = svn_fs_check_path( &kind, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); if( kind == svn_node_none ) { error = svn_error_createf( SVN_ERR_FS_NOT_FOUND, NULL, "Path '%s' does not exist", path.c_str() ); throw SvnException( error ); } error = svn_fs_node_proplist( &props, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } return propsToObject( props, pool ); } Py::Object pysvn_transaction::cmd_propset( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { true, name_path }, { false, NULL } }; FunctionArguments args( "propset", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); std::string prop_val( args.getUtf8String( name_prop_value ) ); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_transaction ); try { svn_error_t * error; svn_fs_root_t *txn_root = NULL; error = m_transaction.root( &txn_root, pool ); if( error != NULL ) throw SvnException( error ); const svn_string_t *svn_prop_val = svn_string_ncreate( prop_val.c_str(), prop_val.size(), pool ); svn_node_kind_t kind; error = svn_fs_check_path( &kind, txn_root, path.c_str(), pool ); if( error != NULL ) throw SvnException( error ); if( kind == svn_node_none ) { error = svn_error_createf( SVN_ERR_FS_NOT_FOUND, NULL, "Path '%s' does not exist", path.c_str() ); throw SvnException( error ); } error = svn_fs_change_node_prop ( txn_root, path.c_str(), prop_name.c_str(), svn_prop_val, pool ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } return Py::None(); } Py::Object pysvn_transaction::cmd_revpropdel( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { false, NULL } }; FunctionArguments args( "revpropdel", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); SvnPool pool( m_transaction ); #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) const svn_string_t *old_prop_value = NULL; #endif try { svn_error_t *error; if( m_transaction.is_revision() ) { #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) error = svn_fs_change_rev_prop2 ( m_transaction, m_transaction.revision(), prop_name.c_str(), &old_prop_value, NULL, // value = NULL pool ); #else error = svn_fs_change_rev_prop ( m_transaction, m_transaction.revision(), prop_name.c_str(), NULL, // value = NULL pool ); #endif } else { error = svn_fs_change_txn_prop ( m_transaction, prop_name.c_str(), NULL, // value = NULL pool ); } if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) if( old_prop_value != NULL ) { return Py::String( old_prop_value->data, (int)old_prop_value->len ); } #endif return Py::None(); } Py::Object pysvn_transaction::cmd_revpropget( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { false, NULL } }; FunctionArguments args( "revpropget", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); SvnPool pool( m_transaction ); svn_string_t *prop_val = NULL; try { svn_error_t *error; if( m_transaction.is_revision() ) { error = svn_fs_revision_prop ( &prop_val, m_transaction, m_transaction.revision(), prop_name.c_str(), pool ); } else { error = svn_fs_txn_prop ( &prop_val, m_transaction, prop_name.c_str(), pool ); } if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } if( prop_val == NULL ) { return Py::None(); } else { return Py::String( prop_val->data, prop_val->len, name_utf8 ); } } Py::Object pysvn_transaction::cmd_revproplist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "revproplist", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_transaction); apr_hash_t *props = NULL; try { svn_error_t *error; if( m_transaction.is_revision() ) { error = svn_fs_revision_proplist ( &props, m_transaction, m_transaction.revision(), pool ); } else { error = svn_fs_txn_proplist ( &props, m_transaction, pool ); } if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } return propsToObject( props, pool ); } Py::Object pysvn_transaction::cmd_revpropset( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { false, NULL } }; FunctionArguments args( "revpropset", args_desc, a_args, a_kws ); args.check(); std::string prop_name( args.getUtf8String( name_prop_name ) ); std::string prop_val( args.getUtf8String( name_prop_value ) ); SvnPool pool( m_transaction ); #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) const svn_string_t *old_prop_value = NULL; #endif try { const svn_string_t *svn_prop_val = svn_string_ncreate( prop_val.c_str(), prop_val.size(), pool ); svn_error_t *error; if( m_transaction.is_revision() ) { #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) error = svn_fs_change_rev_prop2 ( m_transaction, m_transaction.revision(), prop_name.c_str(), &old_prop_value, svn_prop_val, pool ); #else error = svn_fs_change_rev_prop ( m_transaction, m_transaction.revision(), prop_name.c_str(), svn_prop_val, pool ); #endif } else { error = svn_fs_change_txn_prop ( m_transaction, prop_name.c_str(), svn_prop_val, pool ); } if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { throw_client_error( e ); } #if defined( PYSVN_HAS_FS_CHANGE_REV_PROP2 ) if( old_prop_value != NULL ) { return Py::String( old_prop_value->data, (int)old_prop_value->len ); } #endif return Py::None(); } void pysvn_transaction::init_type() { behaviors().name("Transaction"); behaviors().doc( pysvn_transaction_doc ); behaviors().supportGetattr(); behaviors().supportSetattr(); add_keyword_method("cat", &pysvn_transaction::cmd_cat, pysvn_transaction_cat_doc ); add_keyword_method("changed", &pysvn_transaction::cmd_changed, pysvn_transaction_changed_doc ); add_keyword_method("list", &pysvn_transaction::cmd_list, pysvn_transaction_list_doc ); #if 0 add_keyword_method("diff", &pysvn_transaction::cmd_diff, pysvn_transaction_diff_doc ); #endif add_keyword_method("propdel", &pysvn_transaction::cmd_propdel, pysvn_transaction_propdel_doc ); add_keyword_method("propget", &pysvn_transaction::cmd_propget, pysvn_transaction_propget_doc ); add_keyword_method("proplist", &pysvn_transaction::cmd_proplist, pysvn_transaction_proplist_doc ); add_keyword_method("propset", &pysvn_transaction::cmd_propset, pysvn_transaction_propset_doc ); add_keyword_method("revpropdel", &pysvn_transaction::cmd_revpropdel, pysvn_transaction_revpropdel_doc ); add_keyword_method("revpropget", &pysvn_transaction::cmd_revpropget, pysvn_transaction_revpropget_doc ); add_keyword_method("revproplist", &pysvn_transaction::cmd_revproplist, pysvn_transaction_revproplist_doc ); add_keyword_method("revpropset", &pysvn_transaction::cmd_revpropset, pysvn_transaction_revpropset_doc ); } static void convertReposTree ( Py::Dict &dict, bool copy_info, svn_repos_node_t *node, const std::string &path, apr_pool_t *pool ) { if( node == NULL ) return; bool is_changed = false; // is node changed? if( node->action == 'A' ) is_changed = true; else if( node->action == 'D' ) is_changed = true; else if( node->action == 'R' ) { if( node->text_mod ) is_changed = true; if( node->prop_mod ) is_changed = true; } else is_changed = false; if( is_changed ) { if( copy_info ) { Py::Tuple value( 6 ); char action[2] = {node->action, 0}; value[0] = Py::String( action ); value[1] = toEnumValue( node->kind ); value[2] = Py::Int( node->text_mod ); value[3] = Py::Int( node->prop_mod ); if( node->copyfrom_path == NULL ) value[4] = Py::Int( 0 ); else value[4] = Py::Int( node->copyfrom_rev ); value[5] = utf8_string_or_none( node->copyfrom_path ); dict[ Py::String( path, name_utf8 ) ] = value; } else { Py::Tuple value( 4 ); char action[2] = {node->action, 0}; value[0] = Py::String( action ); value[1] = toEnumValue( node->kind ); value[2] = Py::Int( node->text_mod ); value[3] = Py::Int( node->prop_mod ); dict[ Py::String( path, name_utf8 ) ] = value; } } /* Return here if the node has no children. */ node = node->child; if( node == NULL ) return; /* Recursively handle the node's children. */ std::string full_path( path ); if( !full_path.empty() ) full_path += "/"; full_path += node->name; convertReposTree( dict, copy_info, node, full_path, pool ); while( node->sibling != NULL ) { node = node->sibling; std::string full_path( path ); if( !full_path.empty() ) full_path += "/"; full_path += node->name; convertReposTree( dict, copy_info, node, full_path, pool ); } } pysvn-1.9.22/Source/pysvn_arg_processing.cpp000644 000765 000024 00000025006 12754060214 021462 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" static const char g_utf_8[] = "utf-8"; FunctionArguments::FunctionArguments ( const char *function_name, const argument_description *arg_desc, const Py::Tuple &args, const Py::Dict &kws ) : m_function_name( function_name ) , m_arg_desc( arg_desc ) , m_args( args ) , m_kws( kws ) , m_checked_args() , m_min_args( 0 ) , m_max_args( 0 ) { // find out the min and max number of args for( const argument_description *p=arg_desc; p->m_arg_name; ++p ) { m_max_args++; if( p->m_required ) { m_min_args++; } } } FunctionArguments::~FunctionArguments() { // would like to check for all args processed here // but if an expection was raise because of an early // problem with the args we would assert on a false // positive } static char *int_to_string_inner( int n, char *buffer ) { char digit = (n%10) + '0'; int remainder = n/10; if( remainder > 0 ) buffer = int_to_string_inner( remainder, buffer ); *buffer++ = digit; return buffer; } static const char *int_to_string( int n ) { static char number_string[20]; int_to_string_inner( n, &number_string[0] ); return number_string; } void FunctionArguments::check() { if( m_args.size() > m_max_args ) { std::string msg = m_function_name; msg += "() takes exactly "; msg += int_to_string( m_max_args ); msg += " arguments ("; msg += int_to_string( m_args.size() ); msg += " given)"; throw Py::TypeError( msg ); } Py::Tuple::size_type t_i; // place all the positional args in the checked args dict for( t_i=0; t_i( obj.ptr() ); // copy out to caller return rev->getSvnRevision(); } else { std::string msg = m_function_name; msg += "() expecting revision object for keyword "; msg += name; throw Py::AttributeError( msg ); } } svn_opt_revision_t FunctionArguments::getRevision ( const char *name, svn_opt_revision_kind default_value ) { if( hasArg( name ) ) { return getRevision( name ); } else { svn_opt_revision_t revision; revision.kind = default_value; if( revision.kind == svn_opt_revision_number ) revision.value.number = 1; return revision; } } svn_opt_revision_t FunctionArguments::getRevision ( const char *name, svn_opt_revision_t default_value ) { if( hasArg( name ) ) { return getRevision( name ); } else { return default_value; } } #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) svn_depth_t FunctionArguments::getDepth ( const char *depth_name, const char *recursive_name, svn_depth_t default_value, svn_depth_t recursive_true_value, svn_depth_t recursive_false_value ) { if( hasArg( recursive_name ) && hasArg( depth_name ) ) { std::string msg = m_function_name; msg += "() cannot mix "; msg += depth_name; msg += " and "; msg += recursive_name; throw Py::TypeError( msg ); } if( hasArg( recursive_name ) ) { if( getBoolean( recursive_name ) ) { return recursive_true_value; } else { return recursive_false_value; } } if( hasArg( depth_name ) ) { return getDepth( depth_name, default_value ); } return default_value; } svn_depth_t FunctionArguments::getDepth ( const char *depth_name, svn_depth_t default_value ) { if( hasArg( depth_name ) ) { Py::Object value( getArg( depth_name ) ); if( value.isNone() ) { return default_value; } else { Py::ExtensionObject< pysvn_enum_value > py_kind( value ); return svn_depth_t( py_kind.extensionObject()->m_value ); } } return default_value; } svn_depth_t FunctionArguments::getDepth ( const char *depth_name ) { Py::ExtensionObject< pysvn_enum_value > py_kind( getArg( depth_name ) ); return svn_depth_t( py_kind.extensionObject()->m_value ); } #endif // PYSVN_HAS_SVN__DEPTH_PARAMETER #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) svn_wc_conflict_choice_t FunctionArguments::getWcConflictChoice ( const char *choice_name, svn_wc_conflict_choice_t default_value ) { if( hasArg( choice_name ) ) { return getWcConflictChoice( choice_name ); } return default_value; } svn_wc_conflict_choice_t FunctionArguments::getWcConflictChoice ( const char *choice_name ) { Py::ExtensionObject< pysvn_enum_value > py_kind( getArg( choice_name ) ); return svn_wc_conflict_choice_t( py_kind.extensionObject()->m_value ); } #endif pysvn-1.9.22/Source/pysvn.rc.template000644 000765 000024 00000003060 13520100233 020011 0ustar00barrystaff000000 000000 //Microsoft Developer Studio generated resource script. // #define APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "winres.h" ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS ///////////////////////////////////////////////////////////////////////////// // English (U.S.) resources LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US ///////////////////////////////////////////////////////////////////////////// // // Version // VS_VERSION_INFO VERSIONINFO FILEVERSION %(MAJOR)s,%(MINOR)s,%(PATCH)s,%(BUILD)s PRODUCTVERSION %(MAJOR)s,%(MINOR)s,%(PATCH)s,%(BUILD)s FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x9L #else FILEFLAGS 0x8L #endif FILEOS 0x4L FILETYPE 0x2L FILESUBTYPE 0x0L BEGIN BLOCK "StringFileInfo" BEGIN BLOCK "040904B0" BEGIN VALUE "CompanyName", "pysvn.sourceforge.io" VALUE "FileDescription", "pysvn extension" VALUE "FileVersion", "%(MAJOR)s, %(MINOR)s, %(PATCH)s, %(BUILD)s" VALUE "InternalName", "_pysvn.pyd" VALUE "LegalCopyright", "Copyright Barry Scott 2003-2007" VALUE "OriginalFilename", "_pysvn.pyd" VALUE "ProductName", "pysvn extension" VALUE "ProductVersion", "%(MAJOR)s, %(MINOR)s, %(PATCH)s, %(BUILD)s" VALUE "OLESelfRegister", "" END END BLOCK "VarFileInfo" BEGIN VALUE "Translation", 0x409, 1200 END END pysvn-1.9.22/Source/pysvn_client_cmd_prop.cpp000644 000765 000024 00000066541 13572162076 021637 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_prop.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" #if defined( PYSVN_HAS_CLIENT_PROPSET_LOCAL ) Py::Object pysvn_client::cmd_propdel_local( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_path }, { false, name_depth }, { false, name_changelists }, { false, NULL } }; FunctionArguments args( "propdel_local", args_desc, a_args, a_kws ); args.check(); return common_propset_local( args, false ); } Py::Object pysvn_client::cmd_propset_local( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { true, name_path }, { false, name_depth }, { false, name_skip_checks }, { false, name_changelists }, { false, NULL } }; FunctionArguments args( "propset_local", args_desc, a_args, a_kws ); args.check(); return common_propset_local( args, true ); } Py::Object pysvn_client::common_propset_local( FunctionArguments &args, bool is_set ) { SvnPool pool( m_context ); std::string propname( args.getUtf8String( name_prop_name ) ); std::string propval; if( is_set ) { propval = args.getUtf8String( name_prop_value ); } // path apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); // depth svn_depth_t depth = args.getDepth( name_depth, svn_depth_empty ); // skip_check bool skip_checks = false; if( is_set ) { skip_checks = args.getBoolean( name_skip_checks, false ); } // changelist apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } try { checkThreadPermission(); PythonAllowThreads permission( m_context ); const svn_string_t *svn_propval = NULL; if( is_set ) { svn_propval = svn_string_ncreate( propval.c_str(), propval.size(), pool ); } svn_error_t *error = svn_client_propset_local ( propname.c_str(), svn_propval, targets, depth, skip_checks, changelists, m_context.ctx(), pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #endif #if defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) Py::Object pysvn_client::cmd_propdel_remote( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_url }, { false, name_base_revision_for_url }, { false, NULL } }; FunctionArguments args( "propdel_remote", args_desc, a_args, a_kws ); args.check(); return common_propset_remote( args, false ); } Py::Object pysvn_client::cmd_propset_remote( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { true, name_url }, { false, name_skip_checks }, { false, name_base_revision_for_url }, { false, name_revprops }, { false, NULL } }; FunctionArguments args( "propset_remote", args_desc, a_args, a_kws ); args.check(); return common_propset_remote( args, true ); } Py::Object pysvn_client::common_propset_remote( FunctionArguments &args, bool is_set ) { SvnPool pool( m_context ); std::string propname( args.getUtf8String( name_prop_name ) ); std::string propval; if( is_set ) { propval = args.getUtf8String( name_prop_value ); } // url std::string url( args.getUtf8String( name_url ) ); std::string norm_url( svnNormalisedUrl( url, pool ) ); // skip_check bool skip_checks = false; if( is_set ) { skip_checks = args.getBoolean( name_skip_checks, false ); } // base_revision_for_url svn_revnum_t base_revision_for_url = SVN_INVALID_REVNUM; if( args.hasArg( name_base_revision_for_url ) ) { svn_opt_revision_t revision = args.getRevision( name_base_revision_for_url ); if( revision.kind == svn_opt_revision_number ) { base_revision_for_url = revision.value.number; } else { std::string msg = args.m_function_name; msg += "() expects "; msg += name_base_revision_for_url; msg += " to be a number kind revision"; throw Py::TypeError( msg ); } } // revprops apr_hash_t *revprops = NULL; if( is_set && args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } CommitInfoResult commit_baton( pool ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); const svn_string_t *svn_propval = NULL; if( is_set ) { svn_propval = svn_string_ncreate( propval.c_str(), propval.size(), pool ); } svn_error_t *error = svn_client_propset_remote ( propname.c_str(), svn_propval, norm_url.c_str(), skip_checks, base_revision_for_url, revprops, commit_baton.callback(), commit_baton.baton(), m_context.ctx(), pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return toObject( commit_baton, m_wrapper_commit_info, m_commit_info_style ); } #endif Py::Object pysvn_client::cmd_propdel( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_url_or_path }, { false, name_revision }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_PROPSET2 ) { false, name_skip_checks }, #endif #if defined( PYSVN_HAS_CLIENT_PROPSET3 ) { false, name_depth }, { false, name_base_revision_for_url }, { false, name_changelists }, { false, name_revprops }, #endif { false, NULL } }; FunctionArguments args( "propdel", args_desc, a_args, a_kws ); args.check(); return common_propset( args, false ); } Py::Object pysvn_client::cmd_propset( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { true, name_url_or_path }, { false, name_revision }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_PROPSET2 ) { false, name_skip_checks }, #endif #if defined( PYSVN_HAS_CLIENT_PROPSET3 ) { false, name_depth }, { false, name_base_revision_for_url }, { false, name_changelists }, { false, name_revprops }, #endif { false, NULL } }; FunctionArguments args( "propset", args_desc, a_args, a_kws ); args.check(); return common_propset( args, true ); } Py::Object pysvn_client::common_propset( FunctionArguments &args, bool is_set ) { std::string propname( args.getUtf8String( name_prop_name ) ); std::string path( args.getUtf8String( name_url_or_path ) ); std::string propval; if( is_set ) { propval = args.getUtf8String( name_prop_value ); } svn_opt_revision_t revision; if( is_svn_url( path ) ) revision = args.getRevision( name_revision, svn_opt_revision_head ); else revision = args.getRevision( name_revision, svn_opt_revision_working ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_PROPSET3 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_revnum_t base_revision_for_url = SVN_INVALID_REVNUM; if( args.hasArg( name_base_revision_for_url ) ) { svn_opt_revision_t revision = args.getRevision( name_base_revision_for_url ); if( revision.kind == svn_opt_revision_number ) { base_revision_for_url = revision.value.number; } else { std::string msg = args.m_function_name; msg += "() expects "; msg += name_base_revision_for_url; msg += " to be a number kind revision"; throw Py::TypeError( msg ); } } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_empty, svn_depth_infinity, svn_depth_empty ); apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #else bool recurse = args.getBoolean( name_recurse, false ); #endif #if defined( PYSVN_HAS_CLIENT_PROPSET2 ) bool skip_checks = args.getBoolean( name_skip_checks, false ); #endif #if defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) CommitInfoResult commit_info( pool ); #elif defined( PYSVN_HAS_CLIENT_PROPSET3 ) pysvn_commit_info_t *commit_info = NULL; #endif try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); const svn_string_t *svn_propval = NULL; if( is_set ) { svn_propval = svn_string_ncreate( propval.c_str(), propval.size(), pool ); } #if defined( PYSVN_HAS_CLIENT_PROPSET_LOCAL ) && defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) svn_error_t *error; if( is_svn_url( norm_path ) ) { error = svn_client_propset_remote ( propname.c_str(), svn_propval, norm_path.c_str(), skip_checks, base_revision_for_url, revprops, commit_info.callback(), commit_info.baton(), m_context.ctx(), pool ); } else { apr_array_header_t *targets = apr_array_make( pool, 11, sizeof( const char * ) ); APR_ARRAY_PUSH( targets, const char * ) = apr_pstrdup( pool, norm_path.c_str() ); error = svn_client_propset_local ( propname.c_str(), svn_propval, targets, depth, skip_checks, changelists, m_context.ctx(), pool ); } #elif defined( PYSVN_HAS_CLIENT_PROPSET3 ) svn_error_t *error = svn_client_propset3 ( &commit_info, propname.c_str(), svn_propval, norm_path.c_str(), depth, skip_checks, base_revision_for_url, changelists, revprops, m_context.ctx(), pool ); #elif defined( PYSVN_HAS_CLIENT_PROPSET2 ) svn_error_t *error = svn_client_propset2 ( propname.c_str(), svn_propval, norm_path.c_str(), recurse, skip_checks, m_context.ctx(), pool ); #else svn_error_t *error = svn_client_propset ( propname.c_str(), svn_propval, norm_path.c_str(), recurse, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } #if defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) return toObject( commit_info, m_wrapper_commit_info, m_commit_info_style ); #elif defined( PYSVN_HAS_CLIENT_PROPSET3 ) return toObject( commit_info, m_commit_info_style ); #else return Py::None(); #endif } Py::Object pysvn_client::cmd_propget( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_url_or_path }, { false, name_revision }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_PROPGET2 ) { false, name_peg_revision }, #endif #if defined( PYSVN_HAS_CLIENT_PROPGET3 ) { false, name_depth }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) { false, name_get_inherited_props }, #endif { false, NULL } }; FunctionArguments args( "propget", args_desc, a_args, a_kws ); args.check(); std::string propname( args.getUtf8String( name_prop_name ) ); std::string path( args.getUtf8String( name_url_or_path ) ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_PROPGET3 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_files, svn_depth_infinity, svn_depth_empty ); #else bool recurse = args.getBoolean( name_recurse, false ); #endif svn_opt_revision_t revision; if( is_svn_url( path ) ) revision = args.getRevision( name_revision, svn_opt_revision_head ); else revision = args.getRevision( name_revision, svn_opt_revision_working ); #if defined( PYSVN_HAS_CLIENT_PROPGET2 ) svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); #endif bool is_url = is_svn_url( path ); #if defined( PYSVN_HAS_CLIENT_PROPGET2 ) revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); #endif revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); apr_hash_t *props = NULL; #if defined( PYSVN_HAS_CLIENT_PROPGET3 ) svn_revnum_t actual_revnum = 0; #endif #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) bool get_inherited_props = args.getBoolean( name_get_inherited_props, false ); apr_array_header_t *inherited_props = NULL; #endif try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) svn_error_t *error = SVN_NO_ERROR; const char *abspath_or_url = NULL; if( !svn_path_is_url( norm_path.c_str() ) && !svn_dirent_is_absolute( norm_path.c_str() ) ) { error = svn_dirent_get_absolute( &abspath_or_url, norm_path.c_str(), pool ); } else { abspath_or_url = norm_path.c_str(); } if( error == SVN_NO_ERROR ) { error = svn_client_propget5 ( &props, &inherited_props, propname.c_str(), abspath_or_url, // svn asserts if not absolute &peg_revision, &revision, &actual_revnum, depth, changelists, m_context, pool, pool ); } #elif defined( PYSVN_HAS_CLIENT_PROPGET4 ) svn_error_t *error = SVN_NO_ERROR; const char *abspath_or_url = NULL; if( !svn_path_is_url( norm_path.c_str() ) && !svn_dirent_is_absolute( norm_path.c_str() ) ) { error = svn_dirent_get_absolute( &abspath_or_url, norm_path.c_str(), pool ); } else { abspath_or_url = norm_path.c_str(); } if( error == SVN_NO_ERROR ) { error = svn_client_propget4 ( &props, propname.c_str(), abspath_or_url, // svn asserts if not absolute &peg_revision, &revision, &actual_revnum, depth, changelists, m_context, pool, pool ); } #elif defined( PYSVN_HAS_CLIENT_PROPGET3 ) svn_error_t *error = svn_client_propget3 ( &props, propname.c_str(), norm_path.c_str(), &peg_revision, &revision, &actual_revnum, depth, changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_PROPGET2 ) svn_error_t *error = svn_client_propget2 ( &props, propname.c_str(), norm_path.c_str(), &peg_revision, &revision, recurse, m_context, pool ); #else svn_error_t *error = svn_client_propget ( &props, propname.c_str(), norm_path.c_str(), &revision, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) if( get_inherited_props ) { Py::Tuple result( 2 ); result[0] = propsToObject( props, pool ); result[1] = inheritedPropsToObject( inherited_props, pool ); return result; } else #endif { return propsToObject( props, pool ); } } #if defined( PYSVN_HAS_CLIENT_PROPLIST4 ) extern "C" svn_error_t *proplist_receiver_c ( void *baton_, const char *path, apr_hash_t *prop_hash, apr_array_header_t *inherited_props, apr_pool_t *pool ); class ProplistReceiveBaton { public: ProplistReceiveBaton( PythonAllowThreads *permission, SvnPool &pool, Py::List &prop_list, bool get_inherited_props ) : m_permission( permission ) , m_pool( pool ) , m_get_inherited_props( get_inherited_props ) , m_prop_list( prop_list ) {} ~ProplistReceiveBaton() {} svn_proplist_receiver2_t callback() { return &proplist_receiver_c; } void *baton() { return static_cast< void * >( this ); } static ProplistReceiveBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; SvnPool &m_pool; bool m_get_inherited_props; Py::List &m_prop_list; }; extern "C" svn_error_t *proplist_receiver_c ( void *baton_, const char *path, apr_hash_t *prop_hash, apr_array_header_t *inherited_props, apr_pool_t *pool ) { ProplistReceiveBaton *baton = ProplistReceiveBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); Py::Dict prop_dict; if( baton->m_get_inherited_props ) { Py::Tuple py_tuple( 2 ); py_tuple[0] = Py::String( path ); py_tuple[1] = propsToObject( prop_hash, baton->m_pool ); py_tuple[2] = inheritedPropsToObject( inherited_props, baton->m_pool ); baton->m_prop_list.append( py_tuple ); } else { Py::Tuple py_tuple( 2 ); py_tuple[0] = Py::String( path ); py_tuple[1] = propsToObject( prop_hash, baton->m_pool ); baton->m_prop_list.append( py_tuple ); } return SVN_NO_ERROR; } #elif defined( PYSVN_HAS_CLIENT_PROPLIST3 ) extern "C" svn_error_t *proplist_receiver_c ( void *baton_, const char *path, apr_hash_t *prop_hash, apr_pool_t *pool ); class ProplistReceiveBaton { public: ProplistReceiveBaton( PythonAllowThreads *permission, SvnPool &pool, Py::List &prop_list ) : m_permission( permission ) , m_pool( pool ) , m_prop_list( prop_list ) {} ~ProplistReceiveBaton() {} svn_proplist_receiver_t callback() { return &proplist_receiver_c; } void *baton() { return static_cast< void * >( this ); } static ProplistReceiveBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; SvnPool &m_pool; bool m_get_inherited_props; Py::List &m_prop_list; }; extern "C" svn_error_t *proplist_receiver_c ( void *baton_, const char *path, apr_hash_t *prop_hash, apr_pool_t *pool ) { ProplistReceiveBaton *baton = ProplistReceiveBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); Py::Dict prop_dict; Py::Tuple py_tuple( 2 ); py_tuple[0] = Py::String( path ); py_tuple[1] = propsToObject( prop_hash, baton->m_pool ); baton->m_prop_list.append( py_tuple ); return SVN_NO_ERROR; } #endif Py::Object pysvn_client::cmd_proplist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_PROPLIST2 ) { false, name_peg_revision }, #endif #if defined( PYSVN_HAS_CLIENT_PROPLIST3 ) { false, name_depth }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_PROPLIST4 ) { false, name_get_inherited_props }, #endif { false, NULL } }; FunctionArguments args( "proplist", args_desc, a_args, a_kws ); args.check(); Py::List path_list( toListOfStrings( args.getArg( name_url_or_path ) ) ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_PROPLIST3 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_empty, svn_depth_infinity, svn_depth_empty ); #else bool recurse = args.getBoolean( name_recurse, false ); #endif bool is_revision_setup = false; bool is_url = false; svn_opt_revision_t revision_url; svn_opt_revision_t revision_file; if( args.hasArg( name_revision ) ) { revision_url = args.getRevision( name_revision ); revision_file = revision_url; } else { revision_url.kind = svn_opt_revision_head; revision_file.kind = svn_opt_revision_working; } #if defined( PYSVN_HAS_CLIENT_PROPLIST2 ) svn_opt_revision_t peg_revision_url; svn_opt_revision_t peg_revision_file; if( args.hasArg( name_peg_revision ) ) { peg_revision_url = args.getRevision( name_peg_revision ); peg_revision_file = peg_revision_url; } else { peg_revision_url = revision_url; peg_revision_file = revision_file; } #endif #if defined( PYSVN_HAS_CLIENT_PROPLIST4 ) bool get_inherited_props = args.getBoolean( name_get_inherited_props, false ); #endif Py::List list_of_proplists; for( Py::List::size_type i=0; i= 3: module_name = 'pysvn.%s' % (module_name,) replacement = [] if sys.platform == 'win32' and sys.version_info[0] >= 3 and sys.version_info[1] >= 8: replacement.append(''' import os old_path = os.environ['PATH'] os.environ['PATH'] = '%s;%s' % (os.path.dirname( __file__ ), old_path) add_dll_handle = os.add_dll_directory( os.path.dirname( __file__ ) ) ''') replacement.append( ' import %s\n' % (module_name,) ) if module_name != '_pysvn': replacement.append( ' _pysvn = %s\n' % (module_name,) ) if sys.platform == 'win32' and sys.version_info[0] >= 3 and sys.version_info[1] >= 8: replacement.append(''' os.environ['PATH'] = old_path del os ''') pysvn__init__file_contents[ block_begin_index:block_end_index ] = replacement f = open( init_output, 'w' ) f.write( ''.join( pysvn__init__file_contents ) ) f.close() cmd_gen = '%s >>%s' % (gen_tool, init_output) print( 'Info: Running %r' % cmd_gen ) os.system( cmd_gen ) pysvn-1.9.22/Source/run_msdev.cmd000644 000765 000024 00000000024 10016223412 017160 0ustar00barrystaff000000 000000 msdev pysvn.dsw %* pysvn-1.9.22/Source/pysvn/000755 000765 000024 00000000000 14527655012 015674 5ustar00barrystaff000000 000000 pysvn-1.9.22/Source/pysvn_client_cmd_list.cpp000644 000765 000024 00000031453 13262407737 021626 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_list.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "svn_path.h" #include "svn_config.h" #include "pysvn_static_strings.hpp" Py::Object pysvn_client::cmd_ls( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_LS2 ) { false, name_peg_revision }, #endif { false, NULL } }; FunctionArguments args( "ls", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); bool recurse = args.getBoolean( name_recurse, false ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); SvnPool pool( m_context ); apr_hash_t *dirents = NULL; std::string norm_path( svnNormalisedIfPath( path, pool ) ); #if defined( PYSVN_HAS_CLIENT_LS2 ) svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); #endif bool is_url = is_svn_url( path ); #if defined( PYSVN_HAS_CLIENT_LS2 ) revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); #endif revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_LS3 ) svn_error_t *error = svn_client_ls3 // ignore deprecation warning - support old Client().ls() ( &dirents, NULL, norm_path.c_str(), &peg_revision, &revision, recurse, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_LS2 ) svn_error_t *error = svn_client_ls2 ( &dirents, norm_path.c_str(), &peg_revision, &revision, recurse, m_context, pool ); #else svn_error_t *error = svn_client_ls ( &dirents, norm_path.c_str(), &revision, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != 0 ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } std::string base_path; if( !norm_path.empty() ) { base_path = norm_path; base_path += '/'; } // convert the entries into python objects Py::List entries_list; for( apr_hash_index_t *hi = apr_hash_first( pool, dirents ); hi != NULL; hi = apr_hash_next( hi ) ) { const void *key; void *val; apr_hash_this( hi, &key, NULL, &val ); const char *utf8_entryname = static_cast( key ); svn_dirent_t *dirent = static_cast( val ); std::string full_name( base_path ); full_name += utf8_entryname; Py::Dict entry_dict; entry_dict[ *py_name_name ] = Py::String( full_name, name_utf8 ); entry_dict[ *py_name_kind ] = toEnumValue( dirent->kind ); entry_dict[ *py_name_has_props ] = Py::Int( dirent->has_props ); entry_dict[ *py_name_size ] = toFilesize( dirent->size ); entry_dict[ *py_name_created_rev ] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, dirent->created_rev ) ); entry_dict[ *py_name_time ] = toObject( dirent->time ); entry_dict[ *py_name_last_author ] = utf8_string_or_none( dirent->last_author ); entries_list.append( m_wrapper_dirent.wrapDict( entry_dict ) ); } return entries_list; } #if defined( PYSVN_HAS_CLIENT_LIST ) extern "C" svn_error_t *list_receiver_c ( void *baton_, const char *path, const svn_dirent_t *dirent, const svn_lock_t *lock, const char *abs_path, #if defined( PYSVN_HAS_CLIENT_LIST3 ) const char *external_parent_url, const char *external_target, #endif apr_pool_t *pool ); class ListReceiveBaton { public: ListReceiveBaton( PythonAllowThreads *permission, Py::List &list_list, SvnPool &pool ) : m_permission( permission ) , m_include_externals( false ) , m_list_list( list_list ) , m_pool( pool ) {} ~ListReceiveBaton() {} #if defined( PYSVN_HAS_CLIENT_LIST3 ) svn_client_list_func2_t callback() { return &list_receiver_c; } #else svn_client_list_func_t callback() { return &list_receiver_c; } #endif void *baton() { return static_cast( this ); } static ListReceiveBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; apr_uint32_t m_dirent_fields; bool m_fetch_locks; bool m_include_externals; bool m_is_url; std::string m_url_or_path; DictWrapper *m_wrapper_lock; DictWrapper *m_wrapper_list; Py::List &m_list_list; SvnPool &m_pool; }; extern "C" svn_error_t *list_receiver_c ( void *baton_, const char *path, const svn_dirent_t *dirent, const svn_lock_t *lock, const char *abs_path, #if defined( PYSVN_HAS_CLIENT_LIST3 ) const char *external_parent_url, const char *external_target, #endif apr_pool_t *pool ) { ListReceiveBaton *baton = ListReceiveBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); std::string full_path( baton->m_url_or_path ); std::string full_repos_path( abs_path ); if( strlen( path ) != 0 ) { full_path += "/"; full_path += path; full_repos_path += "/"; full_repos_path += path; } Py::Tuple py_tuple( baton->m_include_externals ? 4 : 2 ); Py::Dict entry_dict; entry_dict[ *py_name_path ] = Py::String( full_path, name_utf8 ); entry_dict[ *py_name_repos_path ] = Py::String( full_repos_path, name_utf8 ); if( dirent != NULL ) { if( baton->m_dirent_fields&SVN_DIRENT_KIND ) { entry_dict[ *py_name_kind ] = toEnumValue( dirent->kind ); } if( baton->m_dirent_fields&SVN_DIRENT_SIZE ) { entry_dict[ *py_name_size ] = toFilesize( dirent->size ); } if( baton->m_dirent_fields&SVN_DIRENT_CREATED_REV ) { entry_dict[ *py_name_created_rev ] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, dirent->created_rev ) ); } if( baton->m_dirent_fields&SVN_DIRENT_TIME ) { entry_dict[ *py_name_time ] = toObject( dirent->time ); } if( baton->m_dirent_fields&SVN_DIRENT_HAS_PROPS ) { entry_dict[ *py_name_has_props ] = Py::Int( dirent->has_props ); } if( baton->m_dirent_fields&SVN_DIRENT_LAST_AUTHOR ) { entry_dict[ *py_name_last_author ] = utf8_string_or_none( dirent->last_author ); } } py_tuple[0] = baton->m_wrapper_list->wrapDict( entry_dict ); if( lock == NULL ) { py_tuple[1] = Py::None(); } else { py_tuple[1] = toObject( *lock, *baton->m_wrapper_lock ); } #if defined( PYSVN_HAS_CLIENT_LIST3 ) if( baton->m_include_externals ) { py_tuple[2] = path_string_or_none( external_parent_url, baton->m_pool ); py_tuple[3] = path_string_or_none( external_target, baton->m_pool ); } #endif baton->m_list_list.append( py_tuple ); return SVN_NO_ERROR; } Py::Object pysvn_client::cmd_list( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_peg_revision }, { false, name_revision }, { false, name_recurse }, { false, name_dirent_fields }, { false, name_fetch_locks }, #if defined( PYSVN_HAS_CLIENT_LIST2 ) { false, name_depth }, #endif #if defined( PYSVN_HAS_CLIENT_LIST3 ) { false, name_include_externals }, #endif #if defined( PYSVN_HAS_CLIENT_LIST4 ) { false, name_patterns }, #endif { false, NULL } }; FunctionArguments args( "list", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, svn_opt_revision_unspecified ); bool is_url = is_svn_url( path ); svn_opt_revision_t revision; if( is_url ) revision = args.getRevision( name_revision, svn_opt_revision_head ); else revision = args.getRevision( name_revision, svn_opt_revision_working ); #if defined( PYSVN_HAS_CLIENT_LIST2 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_immediates, svn_depth_infinity, svn_depth_immediates ); #else bool recurse = args.getBoolean( name_recurse, false ); #endif apr_uint32_t dirent_fields = args.getLong( name_dirent_fields, SVN_DIRENT_ALL ); bool fetch_locks = args.getBoolean( name_fetch_locks, false ); #if defined( PYSVN_HAS_CLIENT_LIST3 ) bool include_externals = args.getBoolean( name_include_externals, false ); #endif revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); SvnPool pool( m_context ); std::string norm_path( svnNormalisedIfPath( path, pool ) ); Py::List list_list; try { #if defined( PYSVN_HAS_CLIENT_LIST4 ) apr_array_header_t *patterns = NULL; if( args.hasArg( name_patterns ) ) { Py::Object py_patterns = args.getArg( name_patterns ); if( !py_patterns.isNone() ) { patterns = arrayOfStringsFromListOfStrings( py_patterns, pool ); } } #endif checkThreadPermission(); PythonAllowThreads permission( m_context ); ListReceiveBaton list_baton( &permission, list_list, pool ); list_baton.m_dirent_fields = dirent_fields; list_baton.m_is_url = is_url; list_baton.m_fetch_locks = fetch_locks; list_baton.m_url_or_path = norm_path; list_baton.m_wrapper_lock = &m_wrapper_lock; list_baton.m_wrapper_list = &m_wrapper_list; #if defined( PYSVN_HAS_CLIENT_LIST3 ) list_baton.m_include_externals = include_externals; #endif #if defined( PYSVN_HAS_CLIENT_LIST4 ) svn_error_t *error = svn_client_list4 ( norm_path.c_str(), &peg_revision, &revision, patterns, depth, dirent_fields, fetch_locks, include_externals, list_baton.callback(), list_baton.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_LIST3 ) svn_error_t *error = svn_client_list3 ( norm_path.c_str(), &peg_revision, &revision, depth, dirent_fields, fetch_locks, include_externals, list_baton.callback(), list_baton.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_LIST2 ) svn_error_t *error = svn_client_list2 ( norm_path.c_str(), &peg_revision, &revision, depth, dirent_fields, fetch_locks, list_baton.callback(), list_baton.baton(), m_context, pool ); #else svn_error_t *error = svn_client_list ( norm_path.c_str(), &peg_revision, &revision, recurse, dirent_fields, fetch_locks, list_baton.callback(), list_baton.baton(), m_context, pool ); #endif permission.allowThisThread(); if( error != 0 ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return list_list; } #endif pysvn-1.9.22/Source/pysvn_converters.cpp000644 000765 000024 00000120220 13572162076 020651 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "svn_config.h" #include "svn_time.h" #include "pysvn_static_strings.hpp" static const std::string str_URL( "URL" ); static const std::string str_action( "action" ); static const std::string str_author( "author" ); static const std::string str_base_abspath( "base_abspath" ); static const std::string str_changed_author( "changed_author" ); static const std::string str_changed_date( "changed_date" ); static const std::string str_changed_revision( "changed_revision" ); static const std::string str_changelist( "changelist" ); static const std::string str_checksum( "checksum" ); static const std::string str_comment( "comment" ); static const std::string str_commit_author( "commit_author" ); static const std::string str_commit_revision( "commit_revision" ); static const std::string str_commit_time( "commit_time" ); static const std::string str_conflict_new( "conflict_new" ); static const std::string str_conflict_old( "conflict_old" ); static const std::string str_conflict_work( "conflict_work" ); static const std::string str_conflicts( "conflicts" ); static const std::string str_copy_from_revision( "copy_from_revision" ); static const std::string str_copy_from_url( "copy_from_url" ); static const std::string str_copyfrom_rev( "copyfrom_rev" ); static const std::string str_copyfrom_url( "copyfrom_url" ); static const std::string str_creation_date( "creation_date" ); static const std::string str_date( "date" ); static const std::string str_depth( "depth" ); static const std::string str_entry( "entry" ); static const std::string str_expiration_date( "expiration_date" ); static const std::string str_filesize( "filesize" ); static const std::string str_is_absent( "is_absent" ); static const std::string str_is_binary( "is_binary" ); static const std::string str_is_conflicted( "is_copied" ); static const std::string str_is_copied( "is_copied" ); static const std::string str_is_dav_comment( "is_dav_comment" ); static const std::string str_is_deleted( "is_deleted" ); static const std::string str_is_file_external( "is_file_external" ); static const std::string str_is_locked( "is_locked" ); static const std::string str_is_switched( "is_switched" ); static const std::string str_is_versioned( "is_versioned" ); static const std::string str_kind( "kind" ); static const std::string str_last_changed_author( "last_changed_author" ); static const std::string str_last_changed_date( "last_changed_date" ); static const std::string str_last_changed_rev( "last_changed_rev" ); static const std::string str_local_abspath( "local_abspath" ); static const std::string str_lock( "lock" ); static const std::string str_lock_comment( "lock_comment" ); static const std::string str_lock_creation_date( "lock_creation_date" ); static const std::string str_lock_owner( "lock_owner" ); static const std::string str_lock_token( "lock_token" ); static const std::string str_merged_file( "merged_file" ); static const std::string str_mime_type( "mime_type" ); static const std::string str_moved_from_abspath( "moved_from_abspath" ); static const std::string str_moved_to_abspath( "moved_to_abspath" ); static const std::string str_my_abspath( "my_abspath" ); static const std::string str_name( "name" ); static const std::string str_node_kind( "node_kind" ); static const std::string str_node_status( "node_status" ); static const std::string str_ood_changed_author( "ood_changed_author" ); static const std::string str_ood_changed_date( "ood_changed_date" ); static const std::string str_ood_changed_rev( "ood_changed_rev" ); static const std::string str_ood_kind( "ood_kind" ); static const std::string str_operation( "operation" ); static const std::string str_owner( "owner" ); static const std::string str_path( "path" ); static const std::string str_path_in_repos( "path_in_repos" ); static const std::string str_peg_rev( "peg_rev" ); static const std::string str_post_commit_err( "post_commit_err" ); static const std::string str_prejfile( "prejfile" ); static const std::string str_prop_status( "prop_status" ); static const std::string str_prop_time( "prop_time" ); static const std::string str_properties_time( "properties_time" ); static const std::string str_property_name( "property_name" ); static const std::string str_property_reject_file( "property_reject_file" ); static const std::string str_reason( "reason" ); static const std::string str_recorded_size( "recorded_size" ); static const std::string str_recorded_time( "recorded_time" ); static const std::string str_repos( "repos" ); static const std::string str_repos_UUID( "repos_UUID" ); static const std::string str_repos_lock( "repos_lock" ); static const std::string str_repos_node_status( "repos_node_status" ); static const std::string str_repos_prop_status( "repos_prop_status" ); static const std::string str_repos_relpath( "repos_relpath" ); static const std::string str_repos_root_URL( "repos_root_URL" ); static const std::string str_repos_text_status( "repos_text_status" ); static const std::string str_repos_url( "repos_url" ); static const std::string str_rev( "rev" ); static const std::string str_revision( "revision" ); static const std::string str_schedule( "schedule" ); static const std::string str_size( "size" ); static const std::string str_src_left_version( "src_left_version" ); static const std::string str_src_right_version( "src_right_version" ); static const std::string str_text_status( "text_status" ); static const std::string str_text_time( "text_time" ); static const std::string str_their_abspath( "their_abspath" ); static const std::string str_token( "token" ); static const std::string str_url( "url" ); static const std::string str_uuid( "uuid" ); static const std::string str_wc_info( "wc_info" ); static const std::string str_wc_is_locked( "wc_is_locked" ); static const std::string str_wcroot_abspath( "wcroot_abspath" ); static const std::string str_working_size( "working_size" ); #include //------------------------------------------------------------ // // DictWrapper // //------------------------------------------------------------ DictWrapper::DictWrapper( Py::Dict result_wrappers, const std::string &wrapper_name ) : m_wrapper_name( wrapper_name ) , m_have_wrapper( false ) , m_wrapper() { if( result_wrappers.hasKey( wrapper_name ) ) { m_wrapper = result_wrappers[ wrapper_name ]; m_have_wrapper = true; } } DictWrapper::~DictWrapper() { } Py::Object DictWrapper::wrapDict( Py::Dict result ) const { if( m_have_wrapper ) { Py::Tuple args( 1 ); args[0] = result; try { return m_wrapper.apply( args ); } catch( Py::Exception &e ) { std::cerr << "pysvn: unhandled exception calling " << m_wrapper_name << std::endl; PyErr_Print(); e.clear(); return Py::None(); } } else { return result; } } //------------------------------------------------------------ // // Converters // //------------------------------------------------------------ Py::Object utf8_string_or_none( const char *str ) { if( str == NULL ) return Py::None(); else return Py::String( str, name_utf8 ); } Py::Object utf8_string_or_none( const std::string &str ) { if( str.empty() ) return Py::None(); else return Py::String( str, name_utf8 ); } Py::Object path_string_or_none( const char *str, SvnPool &pool ) { if( str == NULL ) return Py::None(); else return Py::String( osNormalisedPath( str, pool ), name_utf8 ); } Py::Object path_string_or_none( const std::string &str, SvnPool &pool ) { if( str.empty() ) return Py::None(); else return Py::String( osNormalisedPath( str, pool ), name_utf8 ); } apr_time_t convertStringToTime( const std::string &text, apr_time_t now, SvnPool &pool ) { svn_boolean_t matched = 0; apr_time_t result = 0; svn_error_t *error = svn_parse_date ( &matched, &result, text.c_str(), now, pool ); if( error != NULL || !matched ) { return 0; } return result; } Py::Object toSvnRevNum( svn_revnum_t rev ) { return Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, rev ) ); } Py::Object toObject( apr_time_t t ) { return Py::Float( double( t )/1000000 ); } #if defined( PYSVN_HAS_SVN_COMMIT_INFO_T ) Py::Object toObject( pysvn_commit_info_t *commit_info, int commit_style ) { if( commit_info == NULL ) return Py::None(); if( commit_style == 0 ) { if( !SVN_IS_VALID_REVNUM( commit_info->revision ) ) return Py::None(); return toSvnRevNum( commit_info->revision ); } else if( commit_style == 1 ) { Py::Dict commit_info_dict; commit_info_dict[ str_date ] = utf8_string_or_none( commit_info->date ); commit_info_dict[ str_author ] = utf8_string_or_none( commit_info->author ); commit_info_dict[ str_post_commit_err ] = utf8_string_or_none( commit_info->post_commit_err ); if( SVN_IS_VALID_REVNUM( commit_info->revision ) ) { commit_info_dict[ str_revision ] = toSvnRevNum( commit_info->revision ); } else { commit_info_dict[ str_revision ] = Py::None(); } return commit_info_dict; } else { throw Py::RuntimeError( "commit_style value invalid" ); } } #else Py::Object toObject( pysvn_commit_info_t *commit_info ) { if( commit_info == NULL || !SVN_IS_VALID_REVNUM( commit_info->revision ) ) return Py::None(); return toSvnRevNum( commit_info->revision ); } #endif Py::Object toFilesize( svn_filesize_t filesize ) { if( filesize == SVN_INVALID_FILESIZE ) { return Py::None(); } else { #ifdef HAVE_LONG_LONG return Py::LongLong( static_cast( filesize ) ); #else return Py::Int( static_cast( filesize ) ); #endif } } #if defined( PYSVN_HAS_CLIENT_STATUS_T ) Py::Object toObject ( Py::String path, svn_client_status_t &svn_status, SvnPool &pool, const DictWrapper &wrapper_status2, const DictWrapper &wrapper_lock ) { Py::Dict status; status[ str_path ] = path; status[ str_local_abspath ] = path_string_or_none( svn_status.local_abspath, pool ); status[ str_kind ] = toEnumValue( svn_status.kind ); status[ str_filesize ] = toFilesize( svn_status.filesize ); status[ str_is_versioned] = Py::Boolean( svn_status.versioned ); status[ str_is_conflicted ] = Py::Boolean( svn_status.conflicted ); status[ str_node_status ] = toEnumValue( svn_status.node_status ); status[ str_text_status ] = toEnumValue( svn_status.text_status ); status[ str_prop_status ] = toEnumValue( svn_status.prop_status ); status[ str_wc_is_locked ] = Py::Boolean( svn_status.wc_is_locked ); status[ str_is_copied ] = Py::Boolean( svn_status.copied ); status[ str_repos_root_URL ] = utf8_string_or_none( svn_status.repos_root_url ); status[ str_repos_UUID ] = utf8_string_or_none( svn_status.repos_uuid ); status[ str_repos_relpath ] = utf8_string_or_none( svn_status.repos_relpath ); status[ str_revision ] = toSvnRevNum( svn_status.revision ); status[ str_changed_revision ] = toSvnRevNum( svn_status.changed_rev ); status[ str_changed_date ] = toObject( svn_status.changed_date ); status[ str_changed_author ] = utf8_string_or_none( svn_status.changed_author ); status[ str_is_switched ] = Py::Boolean( svn_status.switched ); status[ str_is_file_external ] = Py::Boolean( svn_status.file_external ); if( svn_status.lock == NULL ) { status[ str_lock ] = Py::None(); } else { status[ str_lock ] = toObject( *svn_status.lock, wrapper_lock ); } status[ str_changelist ] = utf8_string_or_none( svn_status.changelist ); status[ str_depth ] = toEnumValue( svn_status.depth ); status[ str_ood_kind ] = toEnumValue( svn_status.ood_kind ); status[ str_repos_node_status ] = toEnumValue( svn_status.repos_node_status ); status[ str_repos_text_status ] = toEnumValue( svn_status.repos_text_status ); status[ str_repos_prop_status ] = toEnumValue( svn_status.repos_prop_status ); if( svn_status.repos_lock == NULL ) { status[ str_repos_lock ] = Py::None(); } else { status[ str_repos_lock ] = toObject( *svn_status.repos_lock, wrapper_lock ); } status[ str_ood_changed_rev ] = toSvnRevNum( svn_status.ood_changed_rev ); status[ str_ood_changed_date ] = toObject( svn_status.ood_changed_date ); status[ str_ood_changed_author ] = utf8_string_or_none( svn_status.ood_changed_author ); #if defined(PYSVN_HAS_SVN_1_9) status[ str_moved_from_abspath ] = utf8_string_or_none( svn_status.moved_from_abspath ); status[ str_moved_to_abspath ] = utf8_string_or_none( svn_status.moved_to_abspath ); #endif return wrapper_status2.wrapDict( status ); } #endif Py::Object toObject ( Py::String path, pysvn_wc_status_t &svn_status, SvnPool &pool, const DictWrapper &wrapper_status, const DictWrapper &wrapper_entry, const DictWrapper &wrapper_lock ) { Py::Dict status; status[ str_path ] = path; if( svn_status.entry == NULL ) { status[ str_entry ] = Py::None(); } else { status[ str_entry ] = toObject( *svn_status.entry, pool, wrapper_entry ); } if( svn_status.repos_lock == NULL ) { status[ str_repos_lock ] = Py::None(); } #if defined( PYSVN_HAS_CLIENT_STATUS2 ) else { status[ str_repos_lock ] = toObject( *svn_status.repos_lock, wrapper_lock ); } #endif long is_versioned; switch( svn_status.text_status ) { // exists, but uninteresting case svn_wc_status_normal: // is scheduled for addition case svn_wc_status_added: // under v.c., but is missing case svn_wc_status_missing: // scheduled for deletion case svn_wc_status_deleted: // was deleted and then re-added case svn_wc_status_replaced: // text or props have been modified case svn_wc_status_modified: // local mods received repos mods (### unused) case svn_wc_status_merged: // local mods received conflicting repos mods case svn_wc_status_conflicted: is_versioned = 1; break; // an unversioned resource is in the way of the versioned resource case svn_wc_status_obstructed: // does not exist case svn_wc_status_none: // is not a versioned thing in this wc case svn_wc_status_unversioned: // is unversioned but configured to be ignored case svn_wc_status_ignored: // an unversioned directory path populated by an svn:externals // property; this status is not used for file externals case svn_wc_status_external: // a directory doesn't contain a complete entries list case svn_wc_status_incomplete: // assume any new status not versioned default: is_versioned = 0; } status[ str_is_versioned ] = Py::Int( is_versioned ); status[ str_is_locked ] = Py::Int( svn_status.locked ); status[ str_is_copied ] = Py::Int( svn_status.copied ); status[ str_is_switched ] = Py::Int( svn_status.switched ); status[ str_prop_status ] = toEnumValue( svn_status.prop_status ); status[ str_text_status ] = toEnumValue( svn_status.text_status ); status[ str_repos_prop_status ] = toEnumValue( svn_status.repos_prop_status ); status[ str_repos_text_status ] = toEnumValue( svn_status.repos_text_status ); return wrapper_status.wrapDict( status ); } Py::Object toObject ( const svn_wc_entry_t &svn_entry, SvnPool &pool, const DictWrapper &wrapper_entry ) { Py::Dict entry; entry[ str_checksum ] = utf8_string_or_none( svn_entry.checksum ); entry[ str_commit_author ] = utf8_string_or_none( svn_entry.cmt_author ); entry[ str_commit_revision ] = toSvnRevNum( svn_entry.cmt_rev ); entry[ str_commit_time ] = toObject( svn_entry.cmt_date ); entry[ str_conflict_new ] = path_string_or_none( svn_entry.conflict_new, pool ); entry[ str_conflict_old ] = path_string_or_none( svn_entry.conflict_old, pool ); entry[ str_conflict_work ] = path_string_or_none( svn_entry.conflict_wrk, pool ); entry[ str_copy_from_revision ] = toSvnRevNum( svn_entry.copyfrom_rev ); entry[ str_copy_from_url ] = utf8_string_or_none( svn_entry.copyfrom_url ); entry[ str_is_absent ] = Py::Int( svn_entry.absent ); entry[ str_is_copied ] = Py::Int( svn_entry.copied ); entry[ str_is_deleted ] = Py::Int( svn_entry.deleted ); entry[ str_kind ] = toEnumValue( svn_entry.kind ); entry[ str_name ] = path_string_or_none( svn_entry.name, pool ); entry[ str_properties_time ] = toObject( svn_entry.prop_time ); entry[ str_property_reject_file ] = path_string_or_none( svn_entry.prejfile, pool ); entry[ str_repos ] = utf8_string_or_none( svn_entry.repos ); entry[ str_revision ] = toSvnRevNum( svn_entry.revision ); entry[ str_schedule ] = toEnumValue( svn_entry.schedule ); entry[ str_text_time ] = toObject( svn_entry.text_time ); entry[ str_url ] = utf8_string_or_none( svn_entry.url ); entry[ str_uuid ] = utf8_string_or_none( svn_entry.uuid ); #if defined( PYSVN_HAS_CLIENT_STATUS2 ) entry[ str_lock_token ] = utf8_string_or_none( svn_entry.lock_token ); entry[ str_lock_owner ] = utf8_string_or_none( svn_entry.lock_owner ); entry[ str_lock_comment ] = utf8_string_or_none( svn_entry.lock_comment ); entry[ str_lock_creation_date ] = toObject( svn_entry.lock_creation_date ); #endif return wrapper_entry.wrapDict( entry ); } #if defined( PYSVN_HAS_CLIENT_INFO ) Py::Object toObject ( const svn_info_t &info, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ) { Py::Dict py_info; // Where the item lives in the repository. py_info[str_URL] = utf8_string_or_none( info.URL ); // The revision of the object. If path_or_url is a working-copy // path, then this is its current working revnum. If path_or_url // is a URL, then this is the repos revision that path_or_url lives in. py_info[str_rev] = toSvnRevNum( info.rev ); // The node's kind. py_info[str_kind] = toEnumValue( info.kind ); // The root URL of the repository. py_info[str_repos_root_URL] = utf8_string_or_none( info.repos_root_URL ); // The repository's UUID. py_info[str_repos_UUID] = utf8_string_or_none( info.repos_UUID ); // The last revision in which this object changed. py_info[str_last_changed_rev] = toSvnRevNum( info.last_changed_rev ); // The date of the last_changed_rev. py_info[str_last_changed_date] = toObject( info.last_changed_date ); // The author of the last_changed_rev. py_info[str_last_changed_author] = utf8_string_or_none( info.last_changed_author ); #if defined( PYSVN_HAS_CLIENT_LOCK ) // An exclusive lock, if present. Could be either local or remote. if( info.lock == NULL ) { py_info[str_lock] = Py::None(); } else { py_info[str_lock] = toObject( *info.lock, wrapper_lock ); } #endif // Whether or not to ignore the next 10 wc-specific fields. if( info.has_wc_info == 0 ) { py_info[str_wc_info] = Py::None(); } else { Py::Dict py_wc_info; py_wc_info[str_schedule] = toEnumValue( info.schedule ); py_wc_info[str_copyfrom_url] = utf8_string_or_none( info.copyfrom_url ); py_wc_info[str_copyfrom_rev] = toSvnRevNum( info.copyfrom_rev ); py_wc_info[str_text_time] = toObject( info.text_time ); py_wc_info[str_prop_time] = toObject( info.prop_time ); py_wc_info[str_checksum] = utf8_string_or_none( info.checksum ); py_wc_info[str_conflict_old] = utf8_string_or_none( info.conflict_old ); py_wc_info[str_conflict_new] = utf8_string_or_none( info.conflict_new ); py_wc_info[str_conflict_work] = utf8_string_or_none( info.conflict_wrk ); py_wc_info[str_prejfile] = utf8_string_or_none( info.prejfile ); #ifdef PYSVN_HAS_SVN_INFO_T__CHANGELIST py_wc_info[str_changelist] = utf8_string_or_none( info.changelist ); py_wc_info[str_depth] = toEnumValue( info.depth ); #endif #ifdef PYSVN_HAS_SVN_INFO_T__SIZES #ifdef HAVE_LONG_LONG if( info.working_size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_working_size] = Py::None(); else py_wc_info[str_working_size] = Py::LongLong( static_cast( info.working_size ) ); if( info.size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_size] = Py::None(); else py_wc_info[str_size] = Py::LongLong( static_cast( info.size ) ); #else if( info.working_size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_working_size] = Py::None(); else py_wc_info[str_working_size] = Py::Int( static_cast( info.working_size ) ); if( info.size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_size] = Py::None(); else py_wc_info[str_size] = Py::Int( static_cast( info.size ) ); #endif #endif py_info[str_wc_info] = wrapper_wc_info.wrapDict( py_wc_info ); } return wrapper_info.wrapDict( py_info ); } #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) Py::Object toObject ( const svn_wc_conflict_version_t *info ) { if( info == NULL ) { return Py::None(); } Py::Dict d; d[str_repos_url] = utf8_string_or_none( info->repos_url ); d[str_peg_rev] = toSvnRevNum( info->peg_rev ); d[str_path_in_repos] = utf8_string_or_none( info->path_in_repos ); d[str_node_kind] = toEnumValue( info->node_kind ); #if defined( PYSVN_HAS_SVN_1_8 ) d[str_repos_UUID] = utf8_string_or_none( info->repos_uuid ); #endif return d; } Py::String toHex( const unsigned char *bytes, size_t length ) { static char hex_digits[] = "0123456789abcdef"; std::string human; for( size_t index=0; index < length; ++index ) { human += hex_digits[ bytes[index] >> 4 ]; human += hex_digits[ bytes[index] & 0x0f ]; } return Py::String( human ); } Py::Object toObject ( const svn_client_info2_t &info, SvnPool &pool, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ) { Py::Dict py_info; // Where the item lives in the repository. py_info[str_URL] = utf8_string_or_none( info.URL ); // The revision of the object. If path_or_url is a working-copy // path, then this is its current working revnum. If path_or_url // is a URL, then this is the repos revision that path_or_url lives in. py_info[str_rev] = toSvnRevNum( info.rev ); // The root URL of the repository. py_info[str_repos_root_URL] = utf8_string_or_none( info.repos_root_URL ); // The repository's UUID. py_info[str_repos_UUID] = utf8_string_or_none( info.repos_UUID ); // The node's kind. py_info[str_kind] = toEnumValue( info.kind ); py_info[str_size] = toFilesize( info.size ); // The last revision in which this object changed. py_info[str_last_changed_rev] = toSvnRevNum( info.last_changed_rev ); // The date of the last_changed_rev. py_info[str_last_changed_date] = toObject( info.last_changed_date ); // The author of the last_changed_rev. py_info[str_last_changed_author] = utf8_string_or_none( info.last_changed_author ); // An exclusive lock, if present. Could be either local or remote. if( info.lock == NULL ) { py_info[str_lock] = Py::None(); } else { py_info[str_lock] = toObject( *info.lock, wrapper_lock ); } // Whether or not to ignore the next 10 wc-specific fields. if( info.wc_info == NULL ) { py_info[str_wc_info] = Py::None(); } else { Py::Dict py_wc_info; py_wc_info[str_schedule] = toEnumValue( info.wc_info->schedule ); py_wc_info[str_copyfrom_url] = utf8_string_or_none( info.wc_info->copyfrom_url ); py_wc_info[str_copyfrom_rev] = toSvnRevNum( info.wc_info->copyfrom_rev ); if( info.wc_info->checksum != NULL ) { switch( info.wc_info->checksum->kind ) { case svn_checksum_md5: py_wc_info[str_checksum] = toHex( info.wc_info->checksum->digest, 16 ); break; case svn_checksum_sha1: py_wc_info[str_checksum] = toHex( info.wc_info->checksum->digest, 20 ); break; default: py_wc_info[str_checksum] = Py::None(); } } else { py_wc_info[str_checksum] = Py::None(); } py_wc_info[str_changelist] = utf8_string_or_none( info.wc_info->changelist ); py_wc_info[str_depth] = toEnumValue( info.wc_info->depth ); #ifdef HAVE_LONG_LONG if( info.wc_info->recorded_size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_recorded_size] = Py::None(); else py_wc_info[str_recorded_size] = Py::LongLong( static_cast( info.wc_info->recorded_size ) ); #else if( info.wc_info->recorded_size == SVN_INFO_SIZE_UNKNOWN ) py_wc_info[str_recorded_size] = Py::None(); else py_wc_info[str_recorded_size] = Py::Int( static_cast( info.wc_info->recorded_size ) ); #endif py_wc_info[str_recorded_time] = toObject( info.wc_info->recorded_time ); // I'm guesses that recorded size is what used to be size and working_size py_wc_info[str_size] = py_wc_info[str_recorded_size]; py_wc_info[str_working_size] = py_wc_info[str_recorded_size]; // I'm guesses that recorded date is what used to be text_time and prop_time py_wc_info[str_text_time] = py_wc_info[str_recorded_time]; py_wc_info[str_prop_time] = py_wc_info[str_recorded_time]; // conflicts int count = 0; if( info.wc_info->conflicts != NULL ) { count = info.wc_info->conflicts->nelts; } switch( count ) { case 0: py_wc_info[str_conflict_old] = Py::None(); py_wc_info[str_conflict_new] = Py::None(); py_wc_info[str_conflict_work] = Py::None(); py_wc_info[str_prejfile] = Py::None(); break; case 1: // map for backwards compatibility { svn_wc_conflict_description2_t *item = ((svn_wc_conflict_description2_t **)info.wc_info->conflicts->elts)[0]; py_wc_info[str_conflict_old] = utf8_string_or_none( item->my_abspath ); py_wc_info[str_conflict_new] = utf8_string_or_none( item->their_abspath ); py_wc_info[str_conflict_work] = utf8_string_or_none( item->merged_file ); py_wc_info[str_prejfile] = utf8_string_or_none( item->their_abspath ); } break; default: { Py::List all_conflicts; for( int i=0; iconflicts->elts)[i]; conflict[str_local_abspath] = path_string_or_none( item->local_abspath, pool ); conflict[str_node_kind] = toEnumValue( item->node_kind ); conflict[str_kind] = toEnumValue( item->kind ); if( item->kind == svn_wc_conflict_kind_property ) { conflict[str_property_name] = utf8_string_or_none( item->property_name ); } else { conflict[str_property_name] = Py::None(); } if( item->kind == svn_wc_conflict_kind_text ) { conflict[str_is_binary] = Py::Boolean( item->is_binary ); conflict[str_mime_type] = utf8_string_or_none( item->mime_type ); } else { conflict[str_is_binary] = Py::None(); conflict[str_mime_type] = Py::None(); } conflict[str_action] = toEnumValue( item->action ); conflict[str_reason] = toEnumValue( item->reason ); conflict[str_base_abspath] = path_string_or_none( item->base_abspath, pool ); conflict[str_their_abspath] = path_string_or_none( item->their_abspath, pool ); conflict[str_my_abspath] = path_string_or_none( item->my_abspath, pool ); conflict[str_merged_file] = path_string_or_none( item->merged_file, pool ); conflict[str_operation] = toEnumValue( item->operation ); conflict[str_src_left_version] = toObject( item->src_left_version ); conflict[str_src_right_version] = toObject( item->src_right_version ); all_conflicts.append( conflict ); } py_wc_info[str_conflicts] = all_conflicts; } break; } py_wc_info[str_wcroot_abspath] = utf8_string_or_none( info.wc_info->wcroot_abspath ); #if defined(PYSVN_HAS_SVN_1_8) py_wc_info[str_moved_to_abspath] = utf8_string_or_none( info.wc_info->moved_to_abspath ); py_wc_info[str_moved_from_abspath] = utf8_string_or_none( info.wc_info->moved_from_abspath ); #endif py_info[str_wc_info] = wrapper_wc_info.wrapDict( py_wc_info ); } return wrapper_info.wrapDict( py_info ); } #endif #if defined( PYSVN_HAS_CLIENT_LOCK ) Py::Object toObject ( const svn_lock_t &lock, const DictWrapper &wrapper_lock ) { Py::Dict py_lock; py_lock[str_path] = utf8_string_or_none( lock.path ); py_lock[str_token] = utf8_string_or_none( lock.token ); py_lock[str_owner] = utf8_string_or_none( lock.owner ); py_lock[str_comment] = utf8_string_or_none( lock.comment ); py_lock[str_is_dav_comment] = Py::Boolean( lock.is_dav_comment != 0 ); if( lock.creation_date == 0 ) { py_lock[str_creation_date] = Py::None(); } else { py_lock[str_creation_date] = toObject( lock.creation_date ); } if( lock.expiration_date == 0 ) { py_lock[str_expiration_date] = Py::None(); } else { py_lock[str_expiration_date] = toObject( lock.expiration_date ); } return wrapper_lock.wrapDict( py_lock ); } #endif Py::Object propsToObject( apr_hash_t *props, SvnPool &pool ) { Py::Dict py_prop_dict; for( apr_hash_index_t *hi = apr_hash_first( pool, props ); hi; hi = apr_hash_next( hi ) ) { const void *key = NULL; void *val = NULL; apr_hash_this (hi, &key, NULL, &val); const svn_string_t *propval = (const svn_string_t *)val; py_prop_dict[ Py::String( (const char *)key ) ] = Py::String( propval->data, (int)propval->len ); } return py_prop_dict; } #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) Py::Object inheritedPropsToObject( apr_array_header_t *inherited_props, SvnPool &pool ) { Py::Dict all_inherited_props; for (int j = 0; j < inherited_props->nelts; ++j) { svn_prop_inherited_item_t *item = ((svn_prop_inherited_item_t **)inherited_props->elts)[j]; Py::String path_or_url = utf8_string_or_none( item->path_or_url ); Py::Dict py_prop_dict = propsToObject( item->prop_hash, pool ); all_inherited_props[ path_or_url ] = py_prop_dict; } return all_inherited_props; } #endif void proplistToObject( Py::List &py_path_propmap_list, apr_array_header_t *props, SvnPool &pool ) { for (int j = 0; j < props->nelts; ++j) { svn_client_proplist_item_t *item = ((svn_client_proplist_item_t **)props->elts)[j]; Py::Object py_prop_dict( propsToObject( item->prop_hash, pool ) ); std::string node_name( item->node_name->data, item->node_name->len ); Py::Tuple py_path_proplist( 2 ); py_path_proplist[0] = Py::String( osNormalisedPath( node_name, pool ) ); py_path_proplist[1] = py_prop_dict; py_path_propmap_list.append( py_path_proplist ); } } Py::Object revnumListToObject( apr_array_header_t *revs, SvnPool &pool ) { Py::List py_list; for (int j = 0; j < revs->nelts; ++j) { svn_revnum_t revnum = ((svn_revnum_t *)revs->elts)[j]; py_list.append( toSvnRevNum( revnum ) ); } return py_list; } Py::Bytes asUtf8Bytes( Py::Object obj ) { Py::String any( obj ); Py::Bytes utf8( any.encode( name_utf8 ) ); return utf8; } apr_array_header_t *targetsFromStringOrList( Py::Object arg, SvnPool &pool ) { int num_targets = 1; if( arg.isList() ) { Py::List paths( arg ); num_targets = paths.length(); } apr_array_header_t *targets = apr_array_make( pool, num_targets, sizeof( const char * ) ); std::string type_error_message; try { if( arg.isList() ) { Py::List path_list( arg ); for( Py::List::size_type i=0; ikind ); } return py_dirents_dict; } //------------------------------------------------------------ // // // //------------------------------------------------------------ #if defined( PYSVN_HAS_COMMIT_CALLBACK2_T ) CommitInfoResult::CommitInfoResult( SvnPool &pool ) : m_all_results( apr_array_make( pool, 16, sizeof( svn_commit_info_t * ) ) ) , m_pool( pool ) { } CommitInfoResult::~CommitInfoResult() { } int CommitInfoResult::count() { if( m_all_results == NULL ) return 0; return m_all_results->nelts; } const svn_commit_info_t *CommitInfoResult::result( int index ) { assert( m_all_results != NULL ); assert( index >= 0 && index < m_all_results->nelts ); return APR_ARRAY_IDX( m_all_results, index, const svn_commit_info_t * ); } extern "C" svn_error_t *CommitInfoResult_callback( const svn_commit_info_t *commit_info, void *baton, apr_pool_t * ) { CommitInfoResult *result = CommitInfoResult::castBaton( baton ); if( result->m_all_results == NULL ) { return svn_error_create( APR_ENOMEM, NULL, "no memory for commit info results" ); } svn_commit_info_t *copy = svn_commit_info_dup( commit_info, result->m_pool ); if( copy == NULL ) { return svn_error_create( APR_ENOMEM, NULL, "no memory for commit info results" ); } APR_ARRAY_PUSH( result->m_all_results, const svn_commit_info_t * ) = copy; return SVN_NO_ERROR; } Py::Object toObject( const svn_commit_info_t *commit_info ) { Py::Dict commit_info_dict; commit_info_dict[ str_date ] = utf8_string_or_none( commit_info->date ); commit_info_dict[ str_author ] = utf8_string_or_none( commit_info->author ); if( commit_info->post_commit_err == NULL ) { commit_info_dict[ str_post_commit_err ] = Py::None(); } else { // this field is sometimes a pointer to a none UTF8 string commit_info_dict[ str_post_commit_err ] = utf8_string_or_none( commit_info->post_commit_err ); } if( SVN_IS_VALID_REVNUM( commit_info->revision ) ) { commit_info_dict[ str_revision ] = toSvnRevNum( commit_info->revision ); } else { commit_info_dict[ str_revision ] = Py::None(); } return commit_info_dict; } Py::Object toObject( CommitInfoResult &commit_info, const DictWrapper &wrapper_commit_info, int commit_style ) { if( commit_info.count() == 0 ) { Py::Dict commit_info_dict; commit_info_dict[ str_date ] = Py::None(); commit_info_dict[ str_author ] = Py::None(); commit_info_dict[ str_post_commit_err ] = Py::None(); commit_info_dict[ str_revision ] = Py::None(); return commit_info_dict; } if( commit_style == 0 ) { // assume the last commit revision is the best to return const svn_commit_info_t *last = commit_info.result( commit_info.count()-1 ); if( !SVN_IS_VALID_REVNUM( last->revision ) ) { return Py::None(); } return toSvnRevNum( last->revision ); } else if( commit_style == 1 ) { const svn_commit_info_t *last = commit_info.result( commit_info.count()-1 ); return toObject( last ); } else if( commit_style == 2 ) { Py::List all_results; for( int index=0; index'), '--distro-dir': (2, ''), '--apr-inc-dir': (1, ''), '--apu-inc-dir': (1, ''), '--apr-lib-dir': (1, ''), '--debug': (0, None), # debug this script '--define': (2, ''), '--enable-debug': (0, None), '--fixed-module-name': (0, None), '--norpath': (0, None), '--platform': (1, ''), '--pycxx-dir': (1, ''), '--pycxx-src-dir': (1, ''), '--svn-inc-dir': (1, ''), '--svn-lib-dir': (1, ''), '--svn-bin-dir': (1, ''), '--verbose': (0, None), '--disable-deprecated-functions-warnings': (0, None), '--link-python-framework-via-dynamic-lookup': (0, None), } def __init__( self, argv ): self.__argv = argv self.__progname = os.path.basename( argv[0] ) self.__all_options = {} self.__used_options = set() def usage( self ): print( ''' Create a makefile for this python and platform python %(progname)s configure where is one or more of: ''' % {'progname': self.__progname} ) for option, num_value in sorted( self.all_options_info.items() ): num, value = num_value if num == 0: print( ' %s' % (option,) ) else: print( ' %s=%s' % (option,value) ) def parseOptions( self ): for option in self.__argv[2:]: option_parts = option.split( '=', 1 ) option_name = option_parts[0] if option_name not in self.all_options_info: print( 'Error: Unknown option %s' % option ) return False repeat_count, value = self.all_options_info[ option_name ] if repeat_count == 0: if len(option_parts) != 1: print( 'Error: Option %s does not take a value' % (option_name,) ) return False self.__all_options[ option_name ] = None elif repeat_count == 1: if len(option_parts) != 2: print( 'Error: Option %s requires a value' % (option_name,) ) return False if option_name in self.__all_options: print( 'Error: only one %s is allowed' % (option_name,) ) return False self.__all_options[ option_name ] = option_parts[1] elif repeat_count == 2: if len(option_parts) != 2: print( 'Error: Option %s requires a value' % (option_name,) ) return False self.__all_options.setdefault( option_name, [] ).append( option_parts[1] ) global _debug if self.hasOption( '--debug' ): _debug = True return True def hasOption( self, option_name ): self.__used_options.add( option_name ) return option_name in self.__all_options def getOption( self, option_name ): self.__used_options.add( option_name ) return self.__all_options[ option_name ] def checkAllOptionsUsed( self ): all_options = set( self.__all_options ) unused_options = all_options - self.__used_options if len(unused_options) > 0: print( 'Error: Unused options: %s' % (', '.join( unused_options ),) ) return False return True #-------------------------------------------------------------------------------- class Setup: def __init__( self, options ): self.options = options def makePrint( self, line ): self.__makefile.write( line ) self.__makefile.write( '\n' ) def setupCompile( self ): print( 'Info: Configure for python %d.%d.%d in exec_prefix %s' % (sys.version_info[0], sys.version_info[1], sys.version_info[2] ,sys.exec_prefix) ) if self.options.hasOption( '--platform' ): self.platform = self.options.getOption( '--platform' ).lower() else: if sys.platform == 'darwin' and os.path.exists( '/System/Library/CoreServices/SystemVersion.plist' ): self.platform = 'macosx' elif sys.platform.startswith('aix'): self.platform = 'aix' elif sys.platform.startswith('sunos5'): self.platform = 'sunos5' elif sys.platform.startswith('linux'): self.platform = 'linux' elif sys.platform.startswith('freebsd'): self.platform = 'freebsd' elif sys.platform == 'cygwin': self.platform = 'cygwin' else: raise SetupError( 'Cannot automatically detect your platform use --platform option' ) if self.platform in ('win32', 'win64'): self.c_utils = Win32CompilerMSVC90( self ) self.c_pysvn = Win32CompilerMSVC90( self ) elif self.platform == 'macosx': self.c_utils = MacOsxCompilerGCC( self ) self.c_pysvn = MacOsxCompilerGCC( self ) elif self.platform == 'linux': self.c_utils = LinuxCompilerGCC( self ) self.c_pysvn = LinuxCompilerGCC( self ) elif self.platform == 'kfreebsd': self.c_utils = LinuxCompilerGCC( self ) self.c_pysvn = LinuxCompilerGCC( self ) elif self.platform == 'hurd': self.c_utils = LinuxCompilerGCC( self ) self.c_pysvn = LinuxCompilerGCC( self ) elif self.platform == 'freebsd': self.c_utils = FreeBsdCompilerGCC( self ) self.c_pysvn = FreeBsdCompilerGCC( self ) elif self.platform == 'cygwin': self.c_utils = CygwinCompilerGCC( self ) self.c_pysvn = CygwinCompilerGCC( self ) elif self.platform == 'aix': self.c_utils = AixCompilerGCC( self ) self.c_pysvn = AixCompilerGCC( self ) elif self.platform == 'sunos5': self.c_utils = SunOsCompilerGCC( self ) self.c_pysvn = SunOsCompilerGCC( self ) else: raise SetupError( 'Unknown platform %r' % (self.platform,) ) print( 'Info: Using tool chain %s' % (self.c_utils.__class__.__name__,) ) self.c_utils.setupUtilities() self.c_pysvn.setupPySvn() self.pycxx_obj_file = [ Source( self.c_pysvn, '%(PYCXX_SRC)s/cxxsupport.cxx' ), Source( self.c_pysvn, '%(PYCXX_SRC)s/cxx_extensions.cxx' ), Source( self.c_pysvn, '%(PYCXX_SRC)s/cxxextensions.c' ), Source( self.c_pysvn, '%(PYCXX_SRC)s/IndirectPythonInterface.cxx' ), ] # after 7.0.0 need to compile new file if self.c_pysvn.pycxx_version >= (7, 0, 0): self.pycxx_obj_file.append( Source( self.c_pysvn, '%(PYCXX_SRC)s/cxx_exceptions.cxx' ) ) pysvn_headers = ['pysvn.hpp', 'pysvn_docs.hpp', 'pysvn_svnenv.hpp', 'pysvn_static_strings.hpp', 'pysvn_version.hpp'] self.pysvn_obj_files = [ Source( self.c_pysvn, 'pysvn.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_callbacks.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_static_strings.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_enum_string.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_add.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_changelist.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_checkin.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_copy.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_diff.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_export.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_info.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_list.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_lock.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_merge.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_patch.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_prop.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_revprop.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_client_cmd_switch.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_transaction.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_revision.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_docs.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_path.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_arg_processing.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_converters.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_svnenv.cpp', pysvn_headers ), Source( self.c_pysvn, 'pysvn_profile.cpp', pysvn_headers ), ] + self.pycxx_obj_file self.generate_svn_error_codes_obj_files = [ Source( self.c_utils, 'generate_svn_error_codes/generate_svn_error_codes.cpp', ['generate_svn_error_codes.hpp'] ), ] self.all_support_targets = [ PysvnDocsSource( self.c_pysvn ), PysvnVersionHeader( self.c_pysvn ), GenerateSvnErrorCodesHeader( self.c_pysvn ), Program( self.c_utils, 'generate_svn_error_codes/generate_svn_error_codes', self.generate_svn_error_codes_obj_files ), PysvnDocsHeader( self.c_pysvn, ['pysvn_docs.cpp'] ) ] self.all_exe = [ PysvnModuleInit( self.c_pysvn ), PythonExtension( self.c_pysvn, self.c_pysvn.expand( 'pysvn/%(PYSVN_MODULE_BASENAME)s' ), self.pysvn_obj_files ), ] def generateSourcesMakefile( self ): if not self.options.parseOptions(): raise SetupError( 'Failed to parse options' ) self.__makefile = open( 'Makefile', 'wt' ) self.setupCompile() print( 'Info: Creating Makefile for Sources' ) self.c_pysvn.generateMakefileHeader() self.makePrint( 'all: %s' % (' '.join( [exe.getTargetFilename() for exe in self.all_exe] )) ) self.makePrint( '' ) for exe in self.all_exe: exe.generateMakefile() for target in self.all_support_targets: target.generateMakefile() self.__makefile.close() self.__makefile = None if not self.options.checkAllOptionsUsed(): raise SetupError( 'Not all options used' ) return 0 def __filterTestCases( self, all_test_case_candidates ): all_test_cases = [] for tc in all_test_case_candidates: if tc.isTestSupported(): all_test_cases.append( tc ) else: print( 'Info: svn testcase %s skipped - svn version too old' % (tc.test_name,) ) return all_test_cases def generateTestMakefile( self ): print( 'Info: Creating Makefile for Tests' ) all_normal_test_cases = self.__filterTestCases( [ TestCase( self.c_pysvn, '01' ), TestCase( self.c_pysvn, '04' ), TestCase( self.c_pysvn, '05' ), TestCase( self.c_pysvn, '06' ), TestCase( self.c_pysvn, '07' ), TestCase( self.c_pysvn, '08', (1,7,0) ), TestCase( self.c_pysvn, '09', (1,7,0) ), TestCase( self.c_pysvn, '10', (1,9,0) ), TestCase( self.c_pysvn, '11', (1,10,0) ), ] ) all_extra_test_cases = self.__filterTestCases( [ TestCase( self.c_pysvn, '03' ), ] ) all_test_cases = [] all_test_cases.extend( all_normal_test_cases ) all_test_cases.extend( all_extra_test_cases ) self.__makefile = open( '../Tests/Makefile', 'wt' ) self.c_pysvn.ruleAllTestCase( 'all', all_normal_test_cases ) self.c_pysvn.ruleAllTestCase( 'extratests', all_extra_test_cases ) self.makePrint( 'clean: %s' % (' '.join( ['clean-%s' % (tc.test_name,) for tc in all_test_cases] )) ) for test_case in all_test_cases: test_case.generateMakefile() self.__makefile.close() self.__makefile = None return 0 #-------------------------------------------------------------------------------- class Compiler: def __init__( self, setup ): debug( 'Compiler.__init__()' ) self.setup = setup self.options = setup.options self.verbose = self.options.hasOption( '--verbose' ) self.__variables = {} self._addVar( 'DEBUG', 'NDEBUG') self._addVar( 'PYSVN_SRC_DIR', os.path.dirname( os.getcwd() ) ) self.py_module_defines = [] self.py_module_init_function = None def _getDefines( self, arg_fmt ): all_defines = [] if self.setup.options.hasOption( '--define' ): for define in self.setup.options.getOption( '--define' ): all_defines.append( arg_fmt % (define,) ) return all_defines def _pysvnModuleSetup( self ): if self.options.hasOption( '--fixed-module-name' ): print( 'Info: Using fixed module name' ) self.pysvn_module_name = '_pysvn' if sys.version_info[0] >= 3: self.py_module_init_function = 'PyInit__pysvn' else: self.py_module_init_function = 'init_pysvn' else: # name of the module including the python version to help # ensure that only a matching _pysvn.so for the version of # python is imported self.pysvn_module_name = '_pysvn_%d_%d' % (sys.version_info[0], sys.version_info[1]) if sys.version_info[0] >= 3: self.py_module_init_function = 'PyInit__pysvn_%d_%d' % sys.version_info[:2] self.py_module_defines.append( ('PyInit__pysvn', self.py_module_init_function) ) self.py_module_defines.append( ('PyInit__pysvn_d', '%s_d' % (self.py_module_init_function,)) ) else: self.py_module_init_function = 'init_pysvn_%d_%d' % sys.version_info[:2] self.py_module_defines.append( ('init_pysvn', self.py_module_init_function) ) self.py_module_defines.append( ('init_pysvn_d', '%s_d' % (self.py_module_init_function,)) ) def _completeInit( self ): # must be called by the leaf derived class to finish initialising the compile self._addVar( 'PYTHON', sys.executable ) pycxx_dir = self.find_pycxx() self._addVar( 'PYCXX', pycxx_dir ) self.pycxx_version = self.__getPyCxxVersion( pycxx_dir ) # assume that newer version are always usable if self.pycxx_version < min_pycxx_version: raise SetupError( 'PyCXX version %d.%d.%d required, but found %d.%d.%d.' % (pycxx_version[0], pycxx_version[1], pycxx_version[2] ,self.pycxx_version[0], self.pycxx_version[1], self.pycxx_version[2]) ) self._addVar( 'PYCXX_SRC', self.find_pycxx_src() ) svn_inc = self.find_svn_inc() self._addVar( 'SVN_INC', svn_inc ) self._addVar( 'SVN_LIB', self.find_svn_lib() ) self._addVar( 'SVN_BIN', self.find_svn_bin() ) self._addVar( 'APR_INC', self.find_apr_inc() ) self._addVar( 'APU_INC', self.find_apu_inc() ) self._addVar( 'APR_LIB', self.find_apr_lib() ) self.__getSvnVersion( svn_inc ) def platformFilename( self, filename ): return filename def makePrint( self, line ): self.setup.makePrint( line ) def generateMakefileHeader( self ): raise NotImplementedError( 'generateMakefileHeader' ) def _addFromEnv( self, name ): debug( 'Compiler._addFromEnv( %r )' % (name,) ) self._addVar( name, os.environ[ name ] ) def _addVar( self, name, value ): debug( '%s._addVar( %r, %r )' % (self.__class__.__name__, name, value) ) try: if '%' in value: value = value % self.__variables self.__variables[ name ] = value except TypeError: raise SetupError( 'Cannot addVar name %r value %r' % (name, value) ) except KeyError as e: raise SetupError( 'Cannot addVar name %r value %r - %s' % (name, value, e) ) def expand( self, s ): try: return s % self.__variables except (TypeError, KeyError) as e: print( 'Error: %s' % (e,) ) print( 'String: %s' % (s,) ) for key, value in sorted( self.__variables.items() ): print( 'Variable: %s: %r' % (key, value) ) raise SetupError( 'Cannot expand string %r - %s' % (s,e) ) def find_pycxx( self ): return self.find_dir( 'PyCXX include', '--pycxx-dir', None, self._find_paths_pycxx_dir, 'CXX/Version.hxx' ) def __getPyCxxVersion( self, pycxx_dir ): major = None minor = None patch = None f = open( os.path.join( pycxx_dir, 'CXX/Version.hxx' ) ) for line in f: words = line.split() if len(words) < 3: continue if 'PYCXX_VERSION_MAJOR' == words[1]: major = int( words[2] ) if 'PYCXX_VERSION_MINOR' == words[1]: minor = int( words[2] ) if 'PYCXX_VERSION_PATCH' == words[1]: patch = int( words[2] ) return (major, minor, patch) def find_pycxx_src( self ): v = {'PYCXX': self.expand( '%(PYCXX)s' )} return self.find_dir( 'PyCXX Source', '--pycxx-src-dir', None, [p % v for p in self._find_paths_pycxx_src], 'cxxsupport.cxx' ) def find_svn_inc( self ): for folder in ['include/subversion-1', 'include']: try: return self.find_dir( 'SVN include', '--svn-inc-dir', folder, self._find_paths_svn_inc, 'svn_client.h' ) except SetupError as e: last_exception = e raise last_exception def find_svn_bin( self ): return self.find_dir( 'SVN bin', '--svn-bin-dir', 'bin', self._find_paths_svn_bin, 'svnadmin%s' % (self.getProgramExt(),) ) def find_svn_lib( self ): last_exception = None for lib_name in self.get_lib_name_for_platform( 'libsvn_client-1' ): try: folder = self.find_dir( 'SVN library', '--svn-lib-dir', 'lib', self._find_paths_svn_lib, lib_name ) break except SetupError as e: last_exception = e if last_exception is not None: raise last_exception # if we are using the Fink SVN then remember this self.is_mac_os_x_fink = folder.startswith( '/sw/' ) self.is_mac_os_x_darwin_ports = folder.startswith( '/opt/local/' ) return folder def find_apr_inc( self ): return self.find_dir( 'APR include', '--apr-inc-dir', 'include', self._find_paths_apr_inc, 'apr.h' ) def find_apu_inc( self ): return self.find_dir( 'APR include', '--apu-inc-dir', 'include', self._find_paths_apr_util_inc, 'apu.h' ) def find_apr_lib( self ): last_exception = None all_lib_names = self.get_lib_name_for_platform( 'libapr-1' ) for lib_name in all_lib_names: try: return self.find_dir( 'APR library', '--apr-lib-dir', 'lib', [], lib_name ) except SetupError: pass for lib_name in all_lib_names: try: return self.find_dir( 'APR library', '--apr-lib-dir', None, self._find_paths_apr_lib, lib_name ) except SetupError as e: last_exception = e raise last_exception def get_lib_name_for_platform( self, libname ): raise NotImplementedError( 'get_lib_name_for_platform' ) def find_dir( self, name, kw, svn_root_suffix, base_dir_list, check_file ): dirname = self.__find_dir( name, kw, svn_root_suffix, base_dir_list, check_file ) print( 'Info: Found %14.14s in %s' % (name, dirname) ) return dirname def __find_dir( self, name, kw, svn_root_suffix, base_dir_list, check_file ): debug( '__find_dir( name=%r, kw=%r, svn_root_suffix=%r, base_dir_list=%r, check_file=%r )' % (name, kw, svn_root_suffix, base_dir_list, check_file) ) # override the base_dir_list from the command line kw svn_root_dir = None if self.options.hasOption( kw ): base_dir_list = [self.options.getOption( kw )] debug( '__find_dir base_dir_list=%r' % (base_dir_list,) ) # expect to find check_file in one of the dir for dirname in base_dir_list: full_check_file = os.path.join( dirname, check_file ) if self.verbose: print( 'Info: Checking for %s in %s' % (name, full_check_file) ) if os.path.exists( full_check_file ): return os.path.abspath( dirname ) raise SetupError( 'Cannot find %s %s - use %s' % (name, check_file, kw) ) def __getSvnVersion( self, svn_include ): all_svn_version_lines = open( os.path.join( svn_include, 'svn_version.h' ) ).readlines() major = None minor = None patch = None for line in all_svn_version_lines: words = line.strip().split() if len(words) > 2 and words[0] == '#define': if words[1] == 'SVN_VER_MAJOR': major = int(words[2]) elif words[1] == 'SVN_VER_MINOR': minor = int(words[2]) elif words[1] == 'SVN_VER_PATCH': patch = int(words[2]) print( 'Info: Building against SVN %d.%d.%d' % (major, minor, patch) ) self.__svn_version_tuple = (major, minor, patch) def getSvnVersion( self ): return self.__svn_version_tuple class Win32CompilerMSVC90(Compiler): def __init__( self, setup ): Compiler.__init__( self, setup ) self._find_paths_pycxx_dir = [] self._find_paths_pycxx_src = [ '%(PYCXX)s/Src', ] if self.options.hasOption( '--distro-dir' ): all_distro_dirs = self.options.getOption( '--distro-dir' ) self._find_paths_apr_inc = [r'%s\include' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_apr_util_inc = [r'%s\include' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_apr_lib = [r'%s\lib' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_svn_inc = [r'%s\include\subversion-1' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_svn_lib = [r'%s\lib' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_svn_bin = [r'%s\bin' % (distro_dir,) for distro_dir in all_distro_dirs] else: self._find_paths_svn_inc = [] self._find_paths_svn_bin = [] self._find_paths_svn_lib = [] self._find_paths_apr_inc = [] self._find_paths_apr_util_inc = [] self._find_paths_apr_lib = [] self._addVar( 'PYTHON_DIR', sys.exec_prefix ) self._addVar( 'PYTHON_INC', r'%(PYTHON_DIR)s\include' ) self._addVar( 'PYTHON_LIB', r'%(PYTHON_DIR)s\libs' ) self._completeInit() def platformFilename( self, filename ): return filename.replace( '/', '\\' ) def getPythonExtensionFileExt( self ): return '.pyd' def getProgramExt( self ): return '.exe' def getObjectExt( self ): return '.obj' def getTouchCommand( self ): return r'C:\UnxUtils\usr\local\wbin\touch.exe' def generateMakefileHeader( self ): self.makePrint( '#' ) self.makePrint( '# Pysvn Makefile generated by setup.py' ) self.makePrint( '#' ) self.makePrint( 'CCC=cl /nologo' ) self.makePrint( 'CC=cl /nologo' ) self.makePrint( '' ) self.makePrint( 'LDSHARED=$(CCC) /LD /Zi /MT /EHsc' ) self.makePrint( 'LDEXE=$(CCC) /Zi /MT /EHsc' ) self.makePrint( self.expand( 'LDLIBS=%(LDLIBS)s' ) ) self.makePrint( '' ) def ruleLinkProgram( self, target ): pyd_filename = target.getTargetFilename() pdb_filename = target.getTargetFilename( '.pdb' ) all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [''] rules.append( '' ) rules.append( '%s : %s' % (pyd_filename, ' '.join( all_objects )) ) rules.append( ' ' r'@echo Link %s' % (pyd_filename,) ) rules.append( ' ' r'@$(LDEXE) %%(CCCFLAGS)s /Fe%s /Fd%s %s $(LDLIBS)' % (pyd_filename, pdb_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleLinkShared( self, target ): pyd_filename = target.getTargetFilename() pdb_filename = target.getTargetFilename( '.pdb' ) all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [''] rules.append( '' ) rules.append( '%s : %s' % (pyd_filename, ' '.join( all_objects )) ) rules.append( ' ' r'@echo Link %s' % (pyd_filename,) ) rules.append( ' ' r'@$(LDSHARED) %%(CCCFLAGS)s /Fe%s /Fd%s %s %%(PYTHON_LIB)s\python%d%d.lib $(LDLIBS)' % (pyd_filename, pdb_filename, ' '.join( all_objects ), sys.version_info[0], sys.version_info[1]) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleCxx( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( ' ' r'@echo Compile: %s into %s' % (target.src_filename, target.getTargetFilename()) ) rules.append( ' ' r'@$(CCC) /c %%(CCCFLAGS)s /Fo%s /Fd%s %s' % (obj_filename, target.dependent.getTargetFilename( '.pdb' ), target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleC( self, target ): # can reuse the C++ rule self.ruleCxx( target ) def ruleClean( self, filename ): rules = [] rules.append( 'clean::' ) rules.append( ' ' r'if exist %s del %s' % (filename, filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def get_lib_name_for_platform( self, libname ): return ['%s.lib' % (libname,)] def setupUtilities( self ): self._addVar( 'CCCFLAGS', r'/Zi /MT /EHsc ' r'/I. /I%(APR_INC)s /I%(APU_INC)s /I%(SVN_INC)s ' r'/D_CRT_NONSTDC_NO_DEPRECATE ' r'/U_DEBUG ' r'/DWIN32 ' r'/D%(DEBUG)s' ) def setupPySvn( self ): self._pysvnModuleSetup() self._addVar( 'PYSVN_MODULE_BASENAME', self.pysvn_module_name ) py_cflags_list = [ r'/Zi /MT /EHsc ', r'/I. /I%(APR_INC)s /I%(APU_INC)s /I%(SVN_INC)s', r'/DPYCXX_PYTHON_2TO3 /I%(PYCXX)s /I%(PYCXX_SRC)s /I%(PYTHON_INC)s', r'/D_CRT_NONSTDC_NO_DEPRECATE', r'/U_DEBUG', r'/DWIN32', r'/D%(DEBUG)s', ] if self.pycxx_version >= (7, 0, 0): # PYSVN uses PYCXX in backward compat mode py_cflags_list.append( r'/DPYCXX_6_2_COMPATIBILITY=1' ) for define, value in self.py_module_defines: py_cflags_list.append( '/D%s=%s' % (define, value) ) py_cflags_list.extend( self._getDefines( '/D%s' ) ) self._addVar( 'CCCFLAGS', ' '.join( py_cflags_list ) ) ldlibs = [ r'odbc32.lib', r'odbccp32.lib', r'Rpcrt4.lib', r'Mswsock.lib', r'%(SVN_LIB)s\libsvn_client-1.lib', r'%(SVN_LIB)s\libsvn_delta-1.lib', r'%(SVN_LIB)s\libsvn_diff-1.lib', r'%(SVN_LIB)s\libsvn_fs-1.lib', r'%(SVN_LIB)s\libsvn_fs_fs-1.lib', r'%(SVN_LIB)s\libsvn_ra-1.lib', r'%(SVN_LIB)s\libsvn_ra_local-1.lib', r'%(SVN_LIB)s\libsvn_ra_svn-1.lib', r'%(SVN_LIB)s\libsvn_ra_serf-1.lib', r'%(SVN_LIB)s\libsvn_repos-1.lib', r'%(SVN_LIB)s\libsvn_subr-1.lib', r'%(SVN_LIB)s\libsvn_wc-1.lib', r'%(APR_LIB)s\libapriconv-1.lib', r'%(APR_LIB)s\libaprutil-1.lib', #r'%(APR_LIB)s\xml.lib', r'%(APR_LIB)s\libapr-1.lib', ] ldlibs.append( r'ws2_32.lib' ) self._addVar( 'LDLIBS', ' '.join( ldlibs ) ) def ruleAllTestCase( self, target_name, all_test_cases ): self.makePrint( '%s: %s' % (target_name , ' '.join( ['test-%s.win32.new.log.clean' % (tc.test_name,) for tc in all_test_cases] )) ) def ruleTestCase( self, test_case ): v = {'TN': test_case.test_name ,'KGV': 'py%d-svn%d.%d' % (sys.version_info[0] ,self.getSvnVersion()[0], self.getSvnVersion()[1]) ,'SVN_VERSION': '%d.%d.%d' % self.getSvnVersion() } rules = [] rules.append( '' ) rules.append( '' ) rules.append( 'test-%(TN)s.win32.new.log: test-%(TN)s.cmd test-%(TN)s.win32.known_good-%(KGV)s.log' % v ) rules.append( ' ' r'-subst b: /d >nul 2>&1' % v ) rules.append( ' ' r'if exist testroot-%(TN)s rmdir /s /q testroot-%(TN)s' % v ) rules.append( ' ' r'set SVN_BIN=%%(SVN_BIN)s' % v ) rules.append( ' ' r'set PYTHON=%%(PYTHON)s' % v ) rules.append( ' ' r'test-%(TN)s.cmd >test-%(TN)s.win32.new.log 2>&1' % v ) rules.append( '' ) rules.append( 'test-%(TN)s.win32.new.log.clean: test-%(TN)s.win32.new.log' % v ) rules.append( ' ' r'%%(PYTHON)s benchmark_diff.py %(SVN_VERSION)s test-%(TN)s.win32.known_good-%(KGV)s.log test-%(TN)s.win32.new.log' % v ) rules.append( '' ) rules.append( 'clean-%(TN)s:' % v ) rules.append( ' ' r'-subst b: /d >nul 2>&1' % v ) rules.append( ' ' r'if exist test-%(TN)s.win32.new.log del test-%(TN)s.win32.new.log' % v ) rules.append( ' ' r'if exist testroot-%(TN)s rmdir /s /q testroot-%(TN)s' % v ) rules.append( '' ) rules.append( 'diff-%(TN)s: test-%(TN)s.win32.new.log' % v ) rules.append( ' ' r'wb-diff.cmd test-%(TN)s.win32.known_good-%(KGV)s.log.clean test-%(TN)s.win32.new.log.clean' % v ) rules.append( '' ) rules.append( 'new-%(TN)s: test-%(TN)s.win32.new.log' % v ) rules.append( ' ' r'move /y test-%(TN)s.win32.new.log test-%(TN)s.win32.known_good-%(KGV)s.log' % v ) self.makePrint( self.expand( '\n'.join( rules ) ) ) class CompilerGCC(Compiler): def __init__( self, setup ): Compiler.__init__( self, setup ) self._addVar( 'CC', os.environ.get('CC', 'gcc') ) self._addVar( 'CCC', os.environ.get('CCC', 'g++') ) print( self.expand( 'Info: Using C compiler %(CC)s' ) ) print( self.expand( 'Info: Using C++ compiler %(CCC)s' ) ) def getPythonExtensionFileExt( self ): return '.so' def getProgramExt( self ): return '' def getObjectExt( self ): return '.o' def getTouchCommand( self ): return 'touch' def generateMakefileHeader( self ): self.makePrint( '#' ) self.makePrint( '# Pysvn Makefile generated by setup.py' ) self.makePrint( '#' ) self.makePrint( '' ) def ruleLinkProgram( self, target ): target_filename = target.getTargetFilename() all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [] rules.append( '%s : %s' % (target_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (target_filename,) ) rules.append( '\t@%%(LDEXE)s -o %s %%(CCCFLAGS)s %s' % (target_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleLinkShared( self, target ): target_filename = target.getTargetFilename() all_objects = [source.getTargetFilename() for source in target.all_sources] rules = [] rules.append( '%s : %s' % (target_filename, ' '.join( all_objects )) ) rules.append( '\t@echo Link %s' % (target_filename,) ) rules.append( '\t@%%(LDSHARED)s -o %s %%(CCCFLAGS)s %s %%(LDLIBS)s' % (target_filename, ' '.join( all_objects )) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleCxx( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, obj_filename) ) rules.append( '\t@%%(CCC)s -c %%(CCCFLAGS)s -o%s %s' % (obj_filename, target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleC( self, target ): obj_filename = target.getTargetFilename() rules = [] rules.append( '%s: %s %s' % (obj_filename, target.src_filename, ' '.join( target.all_dependencies )) ) rules.append( '\t@echo Compile: %s into %s' % (target.src_filename, obj_filename) ) rules.append( '\t@%%(CC)s -c %%(CCFLAGS)s -o%s %s' % (obj_filename, target.src_filename) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleClean( self, filename ): rules = [] rules.append( 'clean::' ) rules.append( '\trm -f %s' % (filename,) ) self.makePrint( self.expand( '\n'.join( rules ) ) ) def ruleAllTestCase( self, target_name, all_test_cases ): self.makePrint( '%s: %s' % (target_name , ' '.join( ['test-%s.unix.new.log.clean' % (tc.test_name,) for tc in all_test_cases] )) ) def ruleTestCase( self, test_case ): v = {'TN': test_case.test_name ,'KGV': 'py%d-svn%d.%d' % (sys.version_info[0] ,self.getSvnVersion()[0], self.getSvnVersion()[1]) ,'SVN_VERSION': '%d.%d.%d' % self.getSvnVersion() } rules = [] rules.append( '' ) rules.append( '' ) rules.append( 'test-%(TN)s.unix.new.log: test-%(TN)s.sh test-%(TN)s.unix.known_good-%(KGV)s.log' % v ) rules.append( '\t' '-rm -rf testroot-%(TN)s' % v ) rules.append( '\t' 'LD_LIBRARY_PATH="%%(SVN_LIB)s:%%(APR_LIB)s" PATH="%%(SVN_BIN)s:$(PATH)" PYTHON="%%(PYTHON)s" ./test-%(TN)s.sh >test-%(TN)s.unix.new.log 2>&1' % v ) rules.append( '' ) rules.append( 'test-%(TN)s.unix.new.log.clean: test-%(TN)s.unix.new.log' % v ) rules.append( '\t' '%%(PYTHON)s benchmark_diff.py %(SVN_VERSION)s test-%(TN)s.unix.known_good-%(KGV)s.log test-%(TN)s.unix.new.log' % v ) rules.append( '' ) rules.append( 'clean-%(TN)s:' % v ) rules.append( '\t' '-rm -f test-%(TN)s.unix.new.log' % v ) rules.append( '\t' '-rm -f test-%(TN)s.unix.new.log.clean' % v ) rules.append( '\t' '-rm -rf testroot-%(TN)s' % v ) rules.append( '' ) rules.append( 'diff-%(TN)s: test-%(TN)s.unix.new.log.clean' % v ) rules.append( '\t' 'wb-diff test-%(TN)s.unix.known_good-%(KGV)s.log.clean test-%(TN)s.unix.new.log.clean' % v ) rules.append( '' ) rules.append( 'new-%(TN)s: test-%(TN)s.unix.new.log' % v ) rules.append( '\t' 'cp test-%(TN)s.unix.new.log test-%(TN)s.unix.known_good-%(KGV)s.log' % v ) self.makePrint( self.expand( '\n'.join( rules ) ) ) class MacOsxCompilerGCC(CompilerGCC): def __init__( self, setup ): CompilerGCC.__init__( self, setup ) self.macosx_deployment_target = os.environ.get( 'MACOSX_DEPLOYMENT_TARGET', None ) if self.macosx_deployment_target is None: raise SetupError( 'Set environment variable MACOSX_DEPLOYMENT_TARGET to desired target' ) print( 'Info: MACOSX_DEPLOYMENT_TARGET is %s' % (self.macosx_deployment_target,) ) xcode_path = '/Applications/Xcode.app' xcode_version_path = os.path.join( xcode_path, 'Contents', 'version.plist' ) if os.path.exists( xcode_version_path ): import plistlib if sys.version_info.major == 2: xcode_version_info = plistlib.readPlist( '/Applications/Xcode.app/Contents/version.plist' ) else: with open( '/Applications/Xcode.app/Contents/version.plist', 'rb' ) as f: xcode_version_info = plistlib.load( f ) self.xcode_version = [int(x) for x in xcode_version_info['CFBundleShortVersionString'].split( '.' )] else: self.xcode_version = None if self.options.hasOption( '--arch' ): arch_options = ' '.join( ['-arch %s' % (arch,) for arch in self.options.getOption( '--arch' )] ) else: arch_options = '' self._addVar( 'CCC', 'g++ %s -mmacosx-version-min=%s' % (arch_options, self.macosx_deployment_target) ) self._addVar( 'CC', 'gcc %s -mmacosx-version-min=%s' % (arch_options, self.macosx_deployment_target) ) self._find_paths_pycxx_dir = [ '../Import/pycxx-%d.%d.%d' % min_pycxx_version, sysconfig.get_path('include') # typical Linux ] self._find_paths_pycxx_src = [ '%(PYCXX)s/Src', '/usr/share/python%s/CXX' % (sysconfig.get_python_version(),) # typical Linux ] if self.options.hasOption( '--distro-dir' ): all_distro_dirs = self.options.getOption( '--distro-dir' ) self._find_paths_svn_inc = ['%s/include/subversion-1' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_svn_bin = ['%s/bin' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_svn_lib = ['%s/lib' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_apr_inc = ['%s/include/apr-1' % (distro_dir,) for distro_dir in all_distro_dirs] self._find_paths_apr_util_inc = self._find_paths_apr_inc self._find_paths_apr_lib = ['%s/lib' % (distro_dir,) for distro_dir in all_distro_dirs] else: self._find_paths_svn_inc = [ '/opt/local/include/subversion-1', # Darwin - darwin ports '/sw/include/subversion-1', # Darwin - Fink '/usr/include/subversion-1', # typical Linux '/usr/local/include/subversion-1', # typical *BSD ] self._find_paths_svn_bin = [ '/opt/local/bin', # Darwin - darwin ports '/sw/bin', # Darwin - Fink '/usr/bin', # typical Linux '/usr/local/bin', # typical *BSD ] self._find_paths_svn_lib = [ '/opt/local/lib', # Darwin - darwin ports '/sw/lib', # Darwin - Fink '/usr/lib', # typical Linux '/usr/local/lib', # typical *BSD ] self._find_paths_apr_inc = [ '/opt/local/include/apr-1', # Darwin - darwin ports '/sw/include/apr-1', # Darwin - fink '/usr/include/apr-1', # typical Linux '/usr/local/apr/include/apr-1', # Mac OS X www.metissian.com ] self._find_paths_apr_util_inc = self._find_paths_apr_inc self._find_paths_apr_lib = [ '/opt/local/lib', # Darwin - darwin ports '/sw/lib', # Darwin - fink '/usr/lib64', # typical 64bit Linux '/usr/lib', # typical Linux '/usr/local/lib64', # typical 64bit Linux '/usr/local/lib', # typical *BSD '/usr/local/apr/lib', # Mac OS X www.metissian.com '/usr/pkg/lib', # netbsd ] self._completeInit() def get_lib_name_for_platform( self, libname ): # With Xcode 7.x no dylib in the SDK only the tbd files return ['%s.dylib' % (libname,), '%s.tbd' % (libname,)] def setupUtilities( self ): self._addVar( 'CCCFLAGS', '-g ' '-Wall -fPIC -fexceptions -frtti ' '-I. -I%(APR_INC)s -I%(APU_INC)s -I%(SVN_INC)s ' '-D%(DEBUG)s' ) self._addVar( 'LDEXE', '%(CCC)s -g' ) def setupPySvn( self ): # Support building in a virtualenv. # # In a virtualenv on a Mac, sys.exec_prefix will be a relative path # pointing to the root of the virtualenv. That root will *not* contain # a Python directory, as needed by PYTHON_FRAMEWORK below. # # Instead, we use sys.real_prefix, which is added when in a virtualenv. # This will point to the Python framework that the virtualenv is based # upon, which does contain the Python directory. It's equivalent to # sys.exec_prefix outside of a virtualenv. python_prefix = getattr( sys, 'real_prefix', sys.exec_prefix ) self._pysvnModuleSetup() self._addVar( 'PYSVN_MODULE_BASENAME', self.pysvn_module_name ) self._addVar( 'PYTHON_VERSION', '%d.%d' % (sys.version_info[0], sys.version_info[1]) ) self._addVar( 'PYTHON_DIR', sys.exec_prefix ) self._addVar( 'PYTHON_FRAMEWORK', os.path.join( python_prefix, 'Python' ) ) self._addVar( 'PYTHON_INC', sysconfig.get_path('include') ) py_cflags_list = [ '-g', '-Wall -fPIC', '-I. -I%(APR_INC)s -I%(APU_INC)s -I%(SVN_INC)s', '-DPYCXX_PYTHON_2TO3 -I%(PYCXX)s -I%(PYCXX_SRC)s -I%(PYTHON_INC)s', '-D%(DEBUG)s', ] for define, value in self.py_module_defines: py_cflags_list.append( '-D%s=%s' % (define, value) ) py_cflags_list.extend( self._getDefines( '-D%s' ) ) py_ld_libs = [ '-L%(SVN_LIB)s', '-L%(APR_LIB)s', '-lsvn_client-1', '-lsvn_repos-1', '-lsvn_wc-1', '-lsvn_fs-1', '-lsvn_subr-1', '-lsvn_diff-1', '-lapr-1', ] self._addVar( 'CCFLAGS', ' '.join( py_cflags_list ) ) self._addVar( 'CCCFLAGS', ' '.join( ['-fexceptions -frtti'] + py_cflags_list ) ) self._addVar( 'LDLIBS', ' '.join( py_ld_libs ) ) if self.options.hasOption( '--link-python-framework-via-dynamic-lookup' ): # preferred link method on homebrew for pysvn self._addVar( 'LDSHARED', '%(CCC)s -bundle -g ' '-framework System ' '-framework CoreFoundation ' '-framework Kerberos ' '-framework Security ' '-undefined dynamic_lookup ' '%(LDLIBS)s' ) else: self._addVar( 'LDSHARED', '%(CCC)s -bundle -g ' '-framework System ' '%(PYTHON_FRAMEWORK)s ' '-framework CoreFoundation ' '-framework Kerberos ' '-framework Security ' '-rpath @loader_path ' '-headerpad_max_install_names ' '%(LDLIBS)s' ) class UnixCompilerGCC(CompilerGCC): def __init__( self, setup ): CompilerGCC.__init__( self, setup ) self._find_paths_pycxx_dir = [ sysconfig.get_path('include'), # typical Linux '/usr/include' ] self._find_paths_pycxx_src = [ '%(PYCXX)s/Src', '/usr/share/python%s/CXX' % sysconfig.get_python_version(), # typical Linux '/usr/src/CXX' ] self._find_paths_svn_inc = [ '/usr/include/subversion-1', # typical Linux '/usr/local/include/subversion-1', # typical *BSD '/usr/pkg/include/subversion-1', # netbsd ] self._find_paths_svn_bin = [ '/usr/bin', # typical Linux '/usr/local/bin', # typical *BSD '/usr/pkg/bin', # netbsd ] self._find_paths_svn_lib = [ '/usr/lib64', # typical 64bit Linux '/usr/lib', # typical Linux '/usr/local/lib64', # typical 64bit Linux '/usr/local/lib', # typical *BSD '/usr/pkg/lib', # netbsd '/usr/lib/x86_64-linux-gnu', # debian/unbuntu ] self._find_paths_apr_inc = [ '/usr/include/apr-1', # typical Linux '/usr/include/apr-1.0', # typical Linux '/usr/local/apr/include/apr-1', # Mac OS X www.metissian.com '/usr/pkg/include/apr-1', # netbsd '/usr/include/apache2', # alternate Linux '/usr/include/httpd', # alternate Linux '/usr/local/include/apr-1', # typical *BSD '/usr/local/include/apache2', # alternate *BSD ] self._find_paths_apr_util_inc = self._find_paths_apr_inc self._find_paths_apr_lib = [ '/usr/lib64', # typical 64bit Linux '/usr/lib', # typical Linux '/usr/local/lib64', # typical 64bit Linux '/usr/local/lib', # typical *BSD '/usr/local/apr/lib', # Mac OS X www.metissian.com '/usr/pkg/lib', # netbsd '/usr/lib/x86_64-linux-gnu', # debian/unbuntu ] self._completeInit() def get_lib_name_for_platform( self, libname ): if self.setup.platform == 'cygwin': return ['%s.dll.a' % libname] else: return ['%s.so' % libname] def setupUtilities( self ): self._addVar( 'CCCFLAGS', '-g ' '-Wall -fPIC -fexceptions -frtti ' '-I. -I%(APR_INC)s -I%(APU_INC)s -I%(SVN_INC)s ' '-D%(DEBUG)s' ) self._addVar( 'LDEXE', '%(CCC)s -g' ) def setupPySvn( self ): self._pysvnModuleSetup() self._addVar( 'PYSVN_MODULE_BASENAME', self.pysvn_module_name ) self._addVar( 'PYTHON_VERSION', '%d.%d' % (sys.version_info[0], sys.version_info[1]) ) self._addVar( 'PYTHON_INC', sysconfig.get_path('include') ) self._addVar( 'PYTHON_ARCH_SPECIFIC_INC', sysconfig.get_path('platinclude') ) py_ldflags_list = [] py_cflags_list = [ '-Wall -fPIC', '-I. -I%(APR_INC)s -I%(APU_INC)s -I%(SVN_INC)s', '-DPYCXX_PYTHON_2TO3 -I%(PYCXX)s -I%(PYCXX_SRC)s -I%(PYTHON_INC)s', '-I%(PYTHON_ARCH_SPECIFIC_INC)s', '-D%(DEBUG)s', ] if self.pycxx_version >= (7, 0, 0): # PYSVN uses PYCXX in backward compat mode py_cflags_list.append( r'-DPYCXX_6_2_COMPATIBILITY=1' ) for define, value in self.py_module_defines: py_cflags_list.append( '-D%s=%s' % (define, value) ) py_cflags_list.extend( self._getDefines( '-D%s' ) ) if self.options.hasOption( '--enable-debug' ): print( 'Info: Debug enabled' ) py_cflags_list.append( '-g' ) py_ldflags_list.append( '-g' ) if self.options.hasOption( '--disable-deprecated-functions-warnings' ): print( 'Info: Disable deprecated functions warnings' ) py_cflags_list.append( '-Wno-deprecated-declarations' ) if 'CFLAGS' in os.environ: py_cflags_list.append( os.environ['CFLAGS'] ) if 'LDFLAGS' in os.environ: py_ldflags_list.append( os.environ['LDFLAGS'] ) self._addVar( 'LDFLAGS', ' '.join( py_ldflags_list ) ) self._addVar( 'CCFLAGS', ' '.join( py_cflags_list ) ) self._addVar( 'CCCFLAGS', ' '.join( py_cflags_list+['-fexceptions -frtti'] ) ) self._addVar( 'LDLIBS', ' '.join( self._getLdLibs() ) ) self._addVar( 'LDSHARED', '%(CCC)s -shared %(LDFLAGS)s' ) #-------------------------------------------------------------------------------- class LinuxCompilerGCC(UnixCompilerGCC): def __init__( self, setup ): UnixCompilerGCC.__init__( self, setup ) def _getLdLibs( self ): py_ld_libs = [ '-L%(SVN_LIB)s', '-L%(APR_LIB)s', ] if not self.setup.options.hasOption( '--norpath' ): py_ld_libs.extend( [ '-Wl,--rpath', '-Wl,%(SVN_LIB)s' ] ) py_ld_libs.extend( [ '-lsvn_client-1', '-lsvn_repos-1', '-lsvn_wc-1', '-lsvn_fs-1', '-lsvn_subr-1', '-lsvn_diff-1', '-lapr-1', ] ) return py_ld_libs class FreeBsdCompilerGCC(UnixCompilerGCC): def __init__( self, setup ): UnixCompilerGCC.__init__( self, setup ) def _getLdLibs( self ): py_ld_libs = [ '-L%(SVN_LIB)s', '-L%(APR_LIB)s', '-Wl,--rpath', '-Wl,/usr/lib:/usr/local/lib', '-lsvn_client-1', '-lsvn_diff-1', '-lsvn_repos-1', ] if os.path.exists( '/usr/lib/libkrb5.so' ): py_ld_libs.append( '-lkrb5' ) py_ld_libs.extend( [ '-lcom_err', '-lexpat', '-lneon', ] ) return py_ld_libs class CygwinCompilerGCC(UnixCompilerGCC): def __init__( self, setup ): UnixCompilerGCC.__init__( self, setup ) def getPythonExtensionFileExt( self ): return '.dll' def _getLdLibs( self ): if sys.version_info[0] >= 3: m = 'm' else: m = '' py_ld_libs = [ '-L%(SVN_LIB)s', '-L%(APR_LIB)s', '-lpython%d.%d%s.dll' % (sys.version_info[0], sys.version_info[1], m), '-lsvn_client-1', '-lsvn_repos-1', '-lsvn_subr-1', '-lsvn_delta-1', '-lsvn_fs_fs-1', '-lsvn_fs-1', '-lsvn_ra_svn-1', '-lsvn_repos-1', '-lsvn_ra_local-1', '-lsvn_diff-1', '-lsvn_ra-1', '-lsvn_wc-1', '-lapr-1', '-laprutil-1', '-liconv', '-lexpat', '-lpthread', ] return py_ld_libs class AixCompilerGCC(UnixCompilerGCC): def __init__( self, setup ): UnixCompilerGCC.__init__( self, setup ) def _getLdLibs( self ): for path in sys.path: python_exp = os.path.join( path, 'config', 'python.exp' ) if os.path.exists( python_exp ): break else: python_exp = os.path.abspath( os.path.join( sys.executable, os.path.pardir, os.path.pardir, 'lib', 'python%d.%d' % (sys.version_info[0], sys.version_info[1]), 'config', 'python.exp')) if not os.path.exists(python_exp): python_exp = 'python.exp' py_ld_libs = [ '-L%(svn_lib_dir)s', '-lsvn_client-1', '-lsvn_repos-1', '-lsvn_subr-1', '-lsvn_delta-1', '-lsvn_fs_fs-1', '-lsvn_fs-1', '-lsvn_ra_svn-1', '-lsvn_repos-1', '-lsvn_ra_local-1', '-lsvn_diff-1', '-lsvn_ra-1', '-lsvn_wc-1', '-lsvn_fs_util-1', '-lsvn_ra_neon-1', '-lapr-1', '-lneon', '-laprutil-1', '-liconv', '-lexpat', '-lintl', '-lpthread', '-lz', '-Wl,-bI:%s' % (python_exp,), ] return py_ld_libs class SunOsCompilerGCC(UnixCompilerGCC): def __init__( self, setup ): UnixCompilerGCC.__init__( self, setup ) def _getLdLibs( self ): py_ld_libs = [ '-L%(svn_lib_dir)s', '-Wl,--rpath -Wl,%(svn_lib_dir)s', '-lsvn_client-1', '-lsvn_diff-1', '-lsvn_repos-1', '-lresolv', '-lexpat', '-lneon', ] return py_ld_libs #-------------------------------------------------------------------------------- class Target: def __init__( self, compiler, all_sources ): self.compiler = compiler self.__generated = False self.dependent = None self.all_sources = all_sources for source in self.all_sources: source.setDependent( self ) def getTargetFilename( self ): raise NotImplementedError( 'getTargetFilename' ) def generateMakefile( self ): if self.__generated: return self.__generated = True return self._generateMakefile() def _generateMakefile( self ): raise NotImplementedError( '_generateMakefile' ) def ruleClean( self, ext=None ): if ext is None: target_filename = self.getTargetFilename() else: target_filename = self.getTargetFilename( ext ) self.compiler.ruleClean( target_filename ) def setDependent( self, dependent ): debug( '%r.setDependent( %r )' % (self, dependent,) ) self.dependent = dependent class Program(Target): def __init__( self, compiler, output, all_sources ): self.output = output Target.__init__( self, compiler, all_sources ) debug( 'Program:0x%8.8x.__init__( %r, ... )' % (id(self), output,) ) def __repr__( self ): return '' % (id(self), self.output) def getTargetFilename( self, ext=None ): if ext is None: ext = self.compiler.getProgramExt() return self.compiler.platformFilename( self.compiler.expand( '%s%s' % (self.output, ext) ) ) def _generateMakefile( self ): debug( 'Program:0x%8.8x.generateMakefile() for %r dependent %r' % (id(self), self.output, self.dependent) ) self.compiler.ruleLinkProgram( self ) self.compiler.ruleClean( self.getTargetFilename() ) for source in self.all_sources: source.generateMakefile() class PythonExtension(Target): def __init__( self, compiler, output, all_sources ): self.output = output Target.__init__( self, compiler, all_sources ) debug( 'PythonExtension:0x%8.8x.__init__( %r, ... )' % (id(self), output,) ) for source in self.all_sources: source.setDependent( self ) def __repr__( self ): return '' % (id(self), self.output) def getTargetFilename( self, ext=None ): if ext is None: ext = self.compiler.getPythonExtensionFileExt() return self.compiler.platformFilename( self.compiler.expand( '%s%s' % (self.output, ext) ) ) def _generateMakefile( self ): debug( 'PythonExtension:0x%8.8x.generateMakefile() for %r' % (id(self), self.output,) ) self.compiler.ruleLinkShared( self ) self.compiler.ruleClean( self.getTargetFilename( '.*' ) ) for source in self.all_sources: source.generateMakefile() class Source(Target): def __init__( self, compiler, src_filename, all_dependencies=None ): self.src_filename = compiler.platformFilename( compiler.expand( src_filename ) ) Target.__init__( self, compiler, [] ) debug( 'Source:0x%8.8x.__init__( %r, %r )' % (id(self), src_filename, all_dependencies) ) self.all_dependencies = all_dependencies if self.all_dependencies is None: self.all_dependencies = [] def __repr__( self ): return '' % (id(self), self.src_filename) def makePrint( self, line ): self.compiler.makePrint( line ) def getTargetFilename( self ): #if not os.path.exists( self.src_filename ): # raise SetupError( 'Cannot find source %s' % (self.src_filename,) ) obj_ext = self.compiler.getObjectExt() basename = os.path.basename( self.src_filename ) if basename.endswith( '.cpp' ): return self.compiler.platformFilename( self.compiler.expand( '%s%s' % (basename[:-len('.cpp')], obj_ext) ) ) if basename.endswith( '.cxx' ): return self.compiler.platformFilename( self.compiler.expand( '%s%s' % (basename[:-len('.cxx')], obj_ext) ) ) if basename.endswith( '.c' ): return self.compiler.platformFilename( self.compiler.expand( '%s%s' % (basename[:-len('.c')], obj_ext) ) ) raise SetupError( 'Unknown source %r' % (self.src_filename,) ) def _generateMakefile( self ): debug( 'Source:0x%8.8x.generateMakefile() for %r' % (id(self), self.src_filename,) ) if self.src_filename.endswith( '.c' ): self.compiler.ruleC( self ) else: self.compiler.ruleCxx( self ) self.compiler.ruleClean( self.getTargetFilename() ) class PysvnSvnErrorsPy(Source): def __init__( self, compiler ): Source.__init__( self, compiler, [] ) debug( 'PysvnSvnErrorsPy:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( '' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s %s' % (self.getTargetFilename() ,self.compiler.platformFilename( '../Docs/generate_cpp_docs_from_html_docs.py' ) ,self.compiler.platformFilename( '../Docs/pysvn_prog_ref.html' )) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%%(PYTHON)s -u %s %%(SVN_INC)s %s %s pysvn_docs.hpp pysvn_docs.cpp' % (self.getTargetFilename() ,self.compiler.platformFilename( '../Docs/generate_cpp_docs_from_html_docs.py' ) ,self.compiler.platformFilename( '../Docs/pysvn_prog_ref.html' )) ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class PysvnDocsSource(Source): def __init__( self, compiler ): Source.__init__( self, compiler, 'pysvn_docs.cpp', [] ) debug( 'PysvnDocsSource:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( 'pysvn_docs.cpp' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s %s' % (self.getTargetFilename() ,self.compiler.platformFilename( '../Docs/generate_cpp_docs_from_html_docs.py' ) ,self.compiler.platformFilename( '../Docs/pysvn_prog_ref.html' )) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%%(PYTHON)s -u %s %%(SVN_INC)s %s pysvn_docs.hpp pysvn_docs.cpp' % (self.compiler.platformFilename( '../Docs/generate_cpp_docs_from_html_docs.py' ) ,self.compiler.platformFilename( '../Docs/pysvn_prog_ref.html' )) ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class GenerateSvnErrorCodesHeader(Source): def __init__( self, compiler ): Source.__init__( self, compiler, 'generate_svn_error_codes.hpp', [] ) debug( 'GenerateSvnErrorCodesHeader:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( 'generate_svn_error_codes.hpp' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s' % (self.getTargetFilename() ,self.compiler.platformFilename( 'generate_svn_error_codes/create_svn_error_codes_hpp.py' )) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%%(PYTHON)s -u %s %%(SVN_INC)s' % (self.compiler.platformFilename( 'generate_svn_error_codes/create_svn_error_codes_hpp.py' ),) ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class PysvnDocsHeader(Source): def __init__( self, compiler, all_dependencies ): Source.__init__( self, compiler, 'pysvn_docs.hpp', [] ) self.all_dependencies = all_dependencies debug( 'PysvnDocsHeader:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( 'pysvn_docs.hpp' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s' % (self.getTargetFilename() ,' '.join( self.all_dependencies)) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%s %s' % (self.compiler.getTouchCommand() ,self.getTargetFilename(),) ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class PysvnVersionHeader(Source): def __init__( self, compiler ): Source.__init__( self, compiler, 'pysvn_version.hpp', [] ) debug( 'PysvnVersionHeader:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( 'pysvn_version.hpp' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s %s %s' % (self.getTargetFilename() ,self.compiler.platformFilename( '../Builder/brand_version.py' ) ,self.compiler.platformFilename( '../Builder/version.info' ) ,self.compiler.platformFilename( 'pysvn_version.hpp.template' )) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%%(PYTHON)s -u %s %s %s' % (self.compiler.platformFilename( '../Builder/brand_version.py' ) ,self.compiler.platformFilename( '../Builder/version.info' ) ,self.compiler.platformFilename( 'pysvn_version.hpp.template' )) ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class PysvnModuleInit(Source): def __init__( self, compiler ): Source.__init__( self, compiler, 'pysvn/__init__.py', [] ) debug( 'PysvnModuleInit:0x%8.8x.__init__()' % (id(self),) ) def __repr__( self ): return '' % (id(self),) def getTargetFilename( self ): return self.compiler.platformFilename( 'pysvn/__init__.py' ) def generateMakefile( self ): rules = [''] rules.append( '%s : %s %s %s' % (self.getTargetFilename() ,self.compiler.platformFilename( 'pysvn/__init__.py.template' ) ,self.compiler.platformFilename( 'create__init__.py' ) ,self.compiler.platformFilename( 'generate_svn_error_codes/generate_svn_error_codes%s' % (self.compiler.getProgramExt(),) )) ) rules.append( '\t@ echo Info: Make %s' % self.getTargetFilename() ) rules.append( '\t%%(PYTHON)s -u %s %s %s %s %%(PYSVN_MODULE_BASENAME)s%s' % (self.compiler.platformFilename( 'create__init__.py' ) ,self.compiler.platformFilename( 'pysvn/__init__.py.template' ) ,self.getTargetFilename() ,self.compiler.platformFilename( 'generate_svn_error_codes/generate_svn_error_codes%s' % (self.compiler.getProgramExt(),) ) ,self.compiler.getPythonExtensionFileExt()) ) if self.compiler.setup.platform in ('win32', 'win64'): rules.append( '\t' r'xcopy /y /q %(SVN_BIN)s\*.dll pysvn' ) rules.append( '' ) rules.append( 'clean::' ) rules.append( '\t' r'if exist pysvn\*.dll del /q pysvn\*.dll' ) self.makePrint( self.compiler.expand( '\n'.join( rules ) ) ) self.ruleClean() class TestCase(Target): def __init__( self, compiler, test_name, required_version=None ): self.test_name = test_name if required_version is None: self.required_version = (1,0,0) else: self.required_version = required_version Target.__init__( self, compiler, [] ) debug( 'TestCase:0x%8.8x.__init__( %r )' % (id(self), test_name) ) def isTestSupported( self ): return self.compiler.getSvnVersion() >= self.required_version def __repr__( self ): return '' % (id(self), self.test_name) def _generateMakefile( self ): debug( 'TestCase:0x%8.8x.generateMakefile() for %r' % (id(self), self.test_name) ) self.compiler.ruleTestCase( self ) pysvn-1.9.22/Source/build.sh000755 000765 000024 00000001475 14304466110 016152 0ustar00barrystaff000000 000000 #!/bin/bash set -e if [ "$1" != "" ] then PY_VER=$1 shift fi if [ "$1" != "" ] then SVN_VER=$1 shift fi case "$(uname)" in Linux) python${PY_VER} setup.py configure \ --enable-debug \ --verbose \ "$@" ;; Darwin) export MACOSX_DEPLOYMENT_TARGET=11.0 python${PY_VER} setup.py configure \ --distro-dir=/usr/local/svn-${SVN_VER} \ --distro-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr \ --arch=x86_64 --arch=arm64 \ --pycxx-dir=${BUILDER_TOP_DIR}/Import/pycxx-${PYCXX_VER} \ --define=APR_IOVEC_DEFINED \ --verbose \ "$@" ;; *) echo "Error: need support for $(uname)" exit 1 ;; esac make clean make all cd ../Tests make clean make all pysvn-1.9.22/Source/setup.py000644 000765 000024 00000003630 11704056554 016231 0ustar00barrystaff000000 000000 # # ==================================================================== # (c) 2005-2009 Barry A Scott. All rights reserved. # # This software is licensed as described in the file LICENSE.txt, # which you should have received as part of this distribution. # # ==================================================================== # # # setup.py # # make it easy to build pysvn outside of svn # import sys import os import setup_backport def main( argv ): if argv[1:2] == ['backport']: if setup_backport.backportRequired(): return setup_backport.cmd_backport( argv ) else: print( 'Info: These sources are compatible with python %d.%d - no need to run the backport command' % (sys.version_info[0], sys.version_info[1]) ) return 0 elif argv[1:2] == ['configure']: if setup_backport.backportRequired(): print( 'Error: These sources are not compatible with python %d.%d - run the backport command to fix' % (sys.version_info[0], sys.version_info[1]) ) return 1 # must not import unless backporting has been done import setup_configure return setup_configure.cmd_configure( argv ) elif argv[1:2] == ['help']: setup_help( argv ) return 0 else: return setup_help( argv ) def setup_help( argv ): progname = os.path.basename( argv[0] ) print( ''' Help python %(progname)s help Backport the PySVN sources to work with python 2.5 and earlier python %(progname)s backport ''' % {'progname': progname} ) if setup_backport.backportRequired(): print( ' Further help is not available until the backport command has been run.' ) return 1 setup_backport.cmd_help( argv ) import setup_configure setup_configure.cmd_help( argv ) return 1 if __name__ == '__main__': sys.exit( main( sys.argv ) ) pysvn-1.9.22/Source/pysvn_static_strings.hpp000644 000765 000024 00000026651 14175474070 021541 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2013 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_static_strings.hpp // #ifndef PYSVN_STATIC_PY_STRINGS_HPP #define PYSVN_STATIC_PY_STRINGS_HPP 1 #ifndef PYSVN_STATIC_STRING #define PYSVN_STATIC_STRING( name, value ) const char name[] = value; #define PYSVN_STATIC_PY_STRING_P( name ) extern Py::String *name; #endif PYSVN_STATIC_STRING( empty_string, "" ) PYSVN_STATIC_STRING( name___members__, "__members__" ) PYSVN_STATIC_STRING( name_action, "action" ) PYSVN_STATIC_STRING( name_add_parents, "add_parents" ) PYSVN_STATIC_STRING( name_adds_as_modification, "adds_as_modification" ) PYSVN_STATIC_STRING( name_allow_mixed_revisions, "allow_mixed_revisions" ) PYSVN_STATIC_STRING( name_allow_unver_obstructions, "allow_unver_obstructions" ) PYSVN_STATIC_STRING( name_annotation, "annotation" ) PYSVN_STATIC_STRING( name_author, "author" ) PYSVN_STATIC_STRING( name_autoprops, "autoprops" ) PYSVN_STATIC_STRING( name_base_dir, "base_dir" ) PYSVN_STATIC_STRING( name_base_revision_for_url, "base_revision_for_url" ) PYSVN_STATIC_STRING( name_break_locks, "break_locks" ) PYSVN_STATIC_STRING( name_callback_cancel, "callback_cancel" ) PYSVN_STATIC_STRING( name_callback_conflict_resolver, "callback_conflict_resolver" ) PYSVN_STATIC_STRING( name_callback_get_log_message, "callback_get_log_message" ) PYSVN_STATIC_STRING( name_callback_get_login, "callback_get_login" ) PYSVN_STATIC_STRING( name_callback_notify, "callback_notify" ) PYSVN_STATIC_STRING( name_callback_progress, "callback_progress" ) PYSVN_STATIC_STRING( name_callback_ssl_client_cert_password_prompt, "callback_ssl_client_cert_password_prompt" ) PYSVN_STATIC_STRING( name_callback_ssl_client_cert_prompt, "callback_ssl_client_cert_prompt" ) PYSVN_STATIC_STRING( name_callback_ssl_server_prompt, "callback_ssl_server_prompt" ) PYSVN_STATIC_STRING( name_callback_ssl_server_trust_prompt, "callback_ssl_server_trust_prompt" ) PYSVN_STATIC_STRING( name_changed_paths, "changed_paths" ) PYSVN_STATIC_STRING( name_changelist, "changelist" ) PYSVN_STATIC_STRING( name_changelists, "changelists" ) PYSVN_STATIC_STRING( name_check_out_of_date, "check_out_of_date" ) PYSVN_STATIC_STRING( name_check_working_copy, "check_working_copy" ) PYSVN_STATIC_STRING( name_clear_changelists, "clear_changelists" ) PYSVN_STATIC_STRING( name_clear_dav_cache, "clear_dav_cache" ) PYSVN_STATIC_STRING( name_comment, "comment" ) PYSVN_STATIC_STRING( name_commit_as_operations, "commit_as_operations" ) PYSVN_STATIC_STRING( name_commit_info_style, "commit_info_style" ) PYSVN_STATIC_STRING( name_config_dir, "config_dir" ) PYSVN_STATIC_STRING( name_conflict_choice, "conflict_choice" ) PYSVN_STATIC_STRING( name_copy_as_child, "copy_as_child" ) PYSVN_STATIC_STRING( name_copy_info, "copy_info" ) PYSVN_STATIC_STRING( name_copyfrom_path, "copyfrom_path" ) PYSVN_STATIC_STRING( name_copyfrom_revision, "copyfrom_revision" ) PYSVN_STATIC_STRING( name_created_rev, "created_rev" ) PYSVN_STATIC_STRING( name_date, "date" ) PYSVN_STATIC_STRING( name_depth, "depth" ) PYSVN_STATIC_STRING( name_depth_as_sticky, "depth_as_sticky" ) PYSVN_STATIC_STRING( name_depth_is_sticky, "depth_is_sticky" ) PYSVN_STATIC_STRING( name_dest_path, "dest_path" ) PYSVN_STATIC_STRING( name_dest_url_or_path, "dest_url_or_path" ) PYSVN_STATIC_STRING( name_diff_added, "diff_added" ) PYSVN_STATIC_STRING( name_diff_deleted, "diff_deleted" ) PYSVN_STATIC_STRING( name_diff_options, "diff_options" ) PYSVN_STATIC_STRING( name_dirent_fields, "dirent_fields" ) PYSVN_STATIC_STRING( name_discover_changed_paths, "discover_changed_paths" ) PYSVN_STATIC_STRING( name_dry_run, "dry_run" ) PYSVN_STATIC_STRING( name_enable, "enable" ) PYSVN_STATIC_STRING( name_end_revision, "end_revision" ) PYSVN_STATIC_STRING( name_exception_style, "exception_style" ) PYSVN_STATIC_STRING( name_expand_keywords, "expand_keywords" ) PYSVN_STATIC_STRING( name_externals_to_pin, "externals_to_pin" ) PYSVN_STATIC_STRING( name_fetch_actual_only, "fetch_actual_only" ) PYSVN_STATIC_STRING( name_fetch_excluded, "fetch_excluded" ) PYSVN_STATIC_STRING( name_fetch_locks, "fetch_locks" ) PYSVN_STATIC_STRING( name_fix_recorded_timestamps, "fix_recorded_timestamps" ) PYSVN_STATIC_STRING( name_force, "force" ) PYSVN_STATIC_STRING( name_from_url, "from_url" ) PYSVN_STATIC_STRING( name_get_all, "get_all" ) PYSVN_STATIC_STRING( name_get_inherited_props, "get_inherited_props" ) PYSVN_STATIC_STRING( name_get_props, "get_props" ) PYSVN_STATIC_STRING( name_has_props, "has_props" ) PYSVN_STATIC_STRING( name_header_encoding, "header_encoding" ) PYSVN_STATIC_STRING( name_ignore, "ignore" ) PYSVN_STATIC_STRING( name_ignore_ancestry, "ignore_ancestry" ) PYSVN_STATIC_STRING( name_ignore_content_type, "ignore_content_type" ) PYSVN_STATIC_STRING( name_ignore_eol_style, "ignore_eol_style" ) PYSVN_STATIC_STRING( name_ignore_externals, "ignore_externals" ) PYSVN_STATIC_STRING( name_ignore_keywords, "ignore_keywords" ) PYSVN_STATIC_STRING( name_ignore_mergeinfo, "ignore_mergeinfo" ) PYSVN_STATIC_STRING( name_ignore_mime_type, "ignore_mime_type" ) PYSVN_STATIC_STRING( name_ignore_properties, "ignore_properties" ) PYSVN_STATIC_STRING( name_ignore_space, "ignore_space" ) PYSVN_STATIC_STRING( name_ignore_unknown_node_types, "ignore_unknown_node_types" ) PYSVN_STATIC_STRING( name_ignore_whitespace, "ignore_whitespace" ) PYSVN_STATIC_STRING( name_include_dir_externals, "include_dir_externals" ) PYSVN_STATIC_STRING( name_include_externals, "include_externals" ) PYSVN_STATIC_STRING( name_include_file_externals, "include_file_externals" ) PYSVN_STATIC_STRING( name_include_merged_revisions, "include_merged_revisions" ) PYSVN_STATIC_STRING( name_is_revision, "is_revision" ) PYSVN_STATIC_STRING( name_keep_changelist, "keep_changelist" ) PYSVN_STATIC_STRING( name_keep_local, "keep_local" ) PYSVN_STATIC_STRING( name_keep_locks, "keep_locks" ) PYSVN_STATIC_STRING( name_kind, "kind" ) PYSVN_STATIC_STRING( name_last_author, "last_author" ) PYSVN_STATIC_STRING( name_limit, "limit" ) PYSVN_STATIC_STRING( name_line, "line" ) PYSVN_STATIC_STRING( name_local_change, "local_change" ) PYSVN_STATIC_STRING( name_local_path, "local_path" ) PYSVN_STATIC_STRING( name_lock, "lock" ) PYSVN_STATIC_STRING( name_log_message, "log_message" ) PYSVN_STATIC_STRING( name_low_water_mark, "low_water_mark" ) PYSVN_STATIC_STRING( name_make_parents, "make_parents" ) PYSVN_STATIC_STRING( name_merge_options, "merge_options" ) PYSVN_STATIC_STRING( name_merged_author, "merged_author" ) PYSVN_STATIC_STRING( name_merged_path, "merged_path" ) PYSVN_STATIC_STRING( name_merged_revision, "merged_revision" ) PYSVN_STATIC_STRING( name_message, "message" ) PYSVN_STATIC_STRING( name_metadata_only, "metadata_only" ) PYSVN_STATIC_STRING( name_move_as_child, "move_as_child" ) PYSVN_STATIC_STRING( name_name, "name" ) PYSVN_STATIC_STRING( name_native_eol, "native_eol" ) PYSVN_STATIC_STRING( name_node_kind, "node_kind" ) PYSVN_STATIC_STRING( name_notice_ancestry, "notice_ancestry" ) PYSVN_STATIC_STRING( name_number, "number" ) PYSVN_STATIC_STRING( name_original_prop_value, "original_prop_value" ) PYSVN_STATIC_STRING( name_password, "password" ) PYSVN_STATIC_STRING( name_patch_abspath, "patch_abspath" ) PYSVN_STATIC_STRING( name_path, "path" ) PYSVN_STATIC_STRING( name_patterns, "patterns" ) PYSVN_STATIC_STRING( name_peg_revision, "peg_revision" ) PYSVN_STATIC_STRING( name_pin_externals, "pin_externals" ) PYSVN_STATIC_STRING( name_prop_changed, "prop_changed" ) PYSVN_STATIC_STRING( name_prop_name, "prop_name" ) PYSVN_STATIC_STRING( name_prop_value, "prop_value" ) PYSVN_STATIC_STRING( name_properties_only, "properties_only" ) PYSVN_STATIC_STRING( name_ranges_to_merge, "ranges_to_merge" ) PYSVN_STATIC_STRING( name_record_only, "record_only" ) PYSVN_STATIC_STRING( name_recurse, "recurse" ) PYSVN_STATIC_STRING( name_return_bytes, "return_bytes" ) PYSVN_STATIC_STRING( name_relative_to_dir, "relative_to_dir" ) PYSVN_STATIC_STRING( name_remove_ignored_items, "remove_ignored_items" ) PYSVN_STATIC_STRING( name_remove_tempfiles, "remove_tempfiles" ) PYSVN_STATIC_STRING( name_remove_unversioned_items, "remove_unversioned_items" ) PYSVN_STATIC_STRING( name_repos_path, "repos_path" ) PYSVN_STATIC_STRING( name_result_wrappers, "result_wrappers" ) PYSVN_STATIC_STRING( name_reverse, "reverse" ) PYSVN_STATIC_STRING( name_revision, "revision" ) PYSVN_STATIC_STRING( name_revision1, "revision1" ) PYSVN_STATIC_STRING( name_revision2, "revision2" ) PYSVN_STATIC_STRING( name_revision_end, "revision_end" ) PYSVN_STATIC_STRING( name_revision_start, "revision_start" ) PYSVN_STATIC_STRING( name_revprops, "revprops" ) PYSVN_STATIC_STRING( name_send_deltas, "sends_deltas@" ) PYSVN_STATIC_STRING( name_show_copies_as_adds, "show_copies_as_adds" ) PYSVN_STATIC_STRING( name_size, "size" ) PYSVN_STATIC_STRING( name_skip_checks, "skip_checks" ) PYSVN_STATIC_STRING( name_sources, "sources" ) PYSVN_STATIC_STRING( name_src_revision, "src_revision" ) PYSVN_STATIC_STRING( name_src_url_or_path, "src_url_or_path" ) PYSVN_STATIC_STRING( name_start_revision, "start_revision" ) PYSVN_STATIC_STRING( name_strict_node_history, "strict_node_history" ) PYSVN_STATIC_STRING( name_strip_count, "strip_count" ) PYSVN_STATIC_STRING( name_summarize_kind, "summarize_kind" ) PYSVN_STATIC_STRING( name_target_wcpath, "target_wcpath" ) PYSVN_STATIC_STRING( name_time, "time" ) PYSVN_STATIC_STRING( name_tmp_path, "tmp_path" ) PYSVN_STATIC_STRING( name_to_url, "to_url" ) PYSVN_STATIC_STRING( name_transaction_name, "transaction_name" ) PYSVN_STATIC_STRING( name_unlock, "unlock" ) PYSVN_STATIC_STRING( name_update, "update" ) PYSVN_STATIC_STRING( name_url, "url" ) PYSVN_STATIC_STRING( name_url_or_path, "url_or_path" ) PYSVN_STATIC_STRING( name_url_or_path1, "url_or_path1" ) PYSVN_STATIC_STRING( name_url_or_path2, "url_or_path2" ) PYSVN_STATIC_STRING( name_use_git_diff_format, "use_git_diff_format" ) PYSVN_STATIC_STRING( name_username, "username" ) PYSVN_STATIC_STRING( name_utf8, "utf-8" ) PYSVN_STATIC_STRING( name_vacuum_pristines, "vacuum_pristines" ) PYSVN_STATIC_STRING( name_wc_dir_abspath, "wc_dir_abspath" ) PYSVN_STATIC_PY_STRING_P( py_name_callback_cancel ) PYSVN_STATIC_PY_STRING_P( py_name_callback_conflict_resolver ) PYSVN_STATIC_PY_STRING_P( py_name_callback_get_log_message ) PYSVN_STATIC_PY_STRING_P( py_name_callback_get_login ) PYSVN_STATIC_PY_STRING_P( py_name_callback_notify ) PYSVN_STATIC_PY_STRING_P( py_name_callback_ssl_client_cert_password_prompt ) PYSVN_STATIC_PY_STRING_P( py_name_callback_ssl_client_cert_prompt ) PYSVN_STATIC_PY_STRING_P( py_name_callback_ssl_server_prompt ) PYSVN_STATIC_PY_STRING_P( py_name_callback_ssl_server_trust_prompt ) PYSVN_STATIC_PY_STRING_P( py_name_commit_info_style ) PYSVN_STATIC_PY_STRING_P( py_name_created_rev ) PYSVN_STATIC_PY_STRING_P( py_name_exception_style ) PYSVN_STATIC_PY_STRING_P( py_name_has_props ) PYSVN_STATIC_PY_STRING_P( py_name_kind ) PYSVN_STATIC_PY_STRING_P( py_name_last_author ) PYSVN_STATIC_PY_STRING_P( py_name_lock ) PYSVN_STATIC_PY_STRING_P( py_name_name ) PYSVN_STATIC_PY_STRING_P( py_name_node_kind ) PYSVN_STATIC_PY_STRING_P( py_name_path ) PYSVN_STATIC_PY_STRING_P( py_name_prop_changed ) PYSVN_STATIC_PY_STRING_P( py_name_repos_path ) PYSVN_STATIC_PY_STRING_P( py_name_size ) PYSVN_STATIC_PY_STRING_P( py_name_summarize_kind ) PYSVN_STATIC_PY_STRING_P( py_name_time ) #undef PYSVN_STATIC_STRING #undef PYSVN_STATIC_PY_STRING_P #endif pysvn-1.9.22/Source/run_py.cmd000644 000765 000024 00000000132 12573526130 016507 0ustar00barrystaff000000 000000 setlocal set PYTHONPATH=%BUILDER_TOP_DIR%\Source c:\python27.win32\python %* endlocal pysvn-1.9.22/Source/run_py.sh000755 000765 000024 00000000221 12617124047 016360 0ustar00barrystaff000000 000000 #!/bin/bash export PYTHONPATH=${BUILDER_TOP_DIR}/Source export LD_LIBRARY_PATH=${SVNCPP_LIB} export DYLD_LIBRARY_PATH=${SVNCPP_LIB} ${PYTHON} $* pysvn-1.9.22/Source/pysvn_enum_string.cpp000644 000765 000024 00000057006 12704212400 021003 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2011 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_enum_string.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" template <> EnumString< svn_opt_revision_kind >::EnumString() : m_type_name( "opt_revision_kind" ) { // No revision information given. add( svn_opt_revision_unspecified, "unspecified" ); // revision given as number add( svn_opt_revision_number, "number" ); // revision given as date add( svn_opt_revision_date, "date" ); // rev of most recent change add( svn_opt_revision_committed, "committed" ); // (rev of most recent change) - 1 add( svn_opt_revision_previous, "previous" ); // .svn/entries current revision add( svn_opt_revision_base, "base" ); // current, plus local mods add( svn_opt_revision_working, "working" ); // repository youngest add( svn_opt_revision_head, "head" ); } template <> EnumString< svn_wc_notify_action_t >::EnumString() : m_type_name( "wc_notify_action" ) { // Adding a path to revision control. add( svn_wc_notify_add, "add" ); // Copying a versioned path. add( svn_wc_notify_copy, "copy" ); // Deleting a versioned path. add( svn_wc_notify_delete, "delete" ); // Restoring a missing path from the pristine text-base. add( svn_wc_notify_restore, "restore" ); // Reverting a modified path. add( svn_wc_notify_revert, "revert" ); // A revert operation has failed. add( svn_wc_notify_failed_revert, "failed_revert" ); // Resolving a conflict. add( svn_wc_notify_resolved, "resolved" ); // Skipping a path. add( svn_wc_notify_skip, "skip" ); // Got a delete in an update. add( svn_wc_notify_update_delete, "update_delete" ); // Got an add in an update. add( svn_wc_notify_update_add, "update_add" ); // Got any other action in an update. add( svn_wc_notify_update_update, "update_update" ); // The last notification in an update (including updates of externals). add( svn_wc_notify_update_completed, "update_completed" ); // Updating an external module. add( svn_wc_notify_update_external, "update_external" ); // The last notification in a status (including status on externals). add( svn_wc_notify_status_completed, "status_completed" ); // Running status on an external module. add( svn_wc_notify_status_external, "status_external" ); // Committing a modification. add( svn_wc_notify_commit_modified, "commit_modified" ); // Committing an addition. add( svn_wc_notify_commit_added, "commit_added" ); // Committing a deletion. add( svn_wc_notify_commit_deleted, "commit_deleted" ); // Committing a replacement. add( svn_wc_notify_commit_replaced, "commit_replaced" ); // Transmitting post-fix text-delta data for a file. add( svn_wc_notify_commit_postfix_txdelta, "commit_postfix_txdelta" ); // Processed a single revision's blame. add( svn_wc_notify_blame_revision, "annotate_revision" ); #if defined( PYSVN_HAS_CLIENT_LOCK ) // Locking a path. add( svn_wc_notify_locked, "locked" ); //Unlocking a path. add( svn_wc_notify_unlocked, "unlocked" ); // Failed to lock a path. add( svn_wc_notify_failed_lock, "failed_lock" ); // Failed to unlock a path. add( svn_wc_notify_failed_unlock, "failed_unlock" ); #endif #if defined( PYSVN_HAS_SVN_WC_NOTIFY_ACTION_T__1_5 ) add( svn_wc_notify_exists, "exists" ); add( svn_wc_notify_changelist_set, "changelist_set" ); add( svn_wc_notify_changelist_clear, "changelist_clear" ); add( svn_wc_notify_changelist_moved, "changelist_moved" ); add( svn_wc_notify_merge_begin, "merge_begin" ); add( svn_wc_notify_foreign_merge_begin, "foreign_merge_begin" ); add( svn_wc_notify_update_replace, "update_replace" ); #endif #if defined( PYSVN_HAS_SVN_1_6 ) add( svn_wc_notify_property_added, "property_added" ); add( svn_wc_notify_property_modified, "property_modified" ); add( svn_wc_notify_property_deleted, "property_deleted" ); add( svn_wc_notify_property_deleted_nonexistent, "property_deleted_nonexistent" ); add( svn_wc_notify_revprop_set, "revprop_set" ); add( svn_wc_notify_revprop_deleted, "revprop_deleted" ); add( svn_wc_notify_merge_completed, "merge_completed" ); add( svn_wc_notify_tree_conflict, "tree_conflict" ); add( svn_wc_notify_failed_external, "failed_external" ); #endif #if defined( PYSVN_HAS_SVN_1_7 ) add( svn_wc_notify_update_started, "update_started" ); add( svn_wc_notify_update_skip_obstruction, "update_skip_obstruction" ); add( svn_wc_notify_update_skip_working_only, "update_skip_working_only" ); add( svn_wc_notify_update_external_removed, "update_external_removed" ); add( svn_wc_notify_update_shadowed_add, "update_shadowed_add" ); add( svn_wc_notify_update_shadowed_update, "update_shadowed_update" ); add( svn_wc_notify_update_shadowed_delete, "update_shadowed_delete" ); add( svn_wc_notify_merge_record_info, "merge_record_info" ); add( svn_wc_notify_upgraded_path, "upgraded_path" ); add( svn_wc_notify_merge_record_info_begin, "merge_record_info_begin" ); add( svn_wc_notify_merge_elide_info, "merge_elide_info" ); add( svn_wc_notify_patch, "patch" ); add( svn_wc_notify_patch_applied_hunk, "patch_applied_hunk" ); add( svn_wc_notify_patch_rejected_hunk, "patch_rejected_hunk" ); add( svn_wc_notify_patch_hunk_already_applied, "patch_hunk_already_applied" ); add( svn_wc_notify_commit_copied, "commit_copied" ); add( svn_wc_notify_commit_copied_replaced, "commit_copied_replaced" ); add( svn_wc_notify_url_redirect, "url_redirect" ); add( svn_wc_notify_path_nonexistent, "path_nonexistent" ); add( svn_wc_notify_exclude, "exclude" ); add( svn_wc_notify_failed_conflict, "failed_conflict" ); add( svn_wc_notify_failed_missing, "failed_missing" ); add( svn_wc_notify_failed_out_of_date, "failed_out_of_date" ); add( svn_wc_notify_failed_no_parent, "failed_no_parent" ); add( svn_wc_notify_failed_locked, "failed_locked" ); add( svn_wc_notify_failed_forbidden_by_server, "failed_forbidden_by_server" ); add( svn_wc_notify_skip_conflicted, "skip_conflicted" ); #endif #if defined( PYSVN_HAS_SVN_1_8 ) add( svn_wc_notify_update_broken_lock, "update_broken_lock" ); add( svn_wc_notify_failed_obstruction, "failed_obstruction" ); add( svn_wc_notify_conflict_resolver_starting, "conflict_resolver_starting" ); add( svn_wc_notify_conflict_resolver_done, "conflict_resolver_done" ); add( svn_wc_notify_left_local_modifications, "left_local_modifications" ); add( svn_wc_notify_foreign_copy_begin, "foreign_copy_begin" ); add( svn_wc_notify_move_broken, "move_broken" ); #endif #if defined( PYSVN_HAS_SVN_1_9 ) add( svn_wc_notify_cleanup_external, "cleanup_external" ); add( svn_wc_notify_failed_requires_target, "failed_requires_target" ); add( svn_wc_notify_info_external, "info_external" ); add( svn_wc_notify_commit_finalizing, "commit_finalizing" ); #endif } template <> EnumString< svn_wc_status_kind >::EnumString() : m_type_name( "wc_status_kind" ) { // does not exist add( svn_wc_status_none, "none" ); // is not a versioned thing in this wc add( svn_wc_status_unversioned, "unversioned" ); // exists, but uninteresting. add( svn_wc_status_normal, "normal" ); // is scheduled for addition add( svn_wc_status_added, "added" ); // under v.c., but is missing add( svn_wc_status_missing, "missing" ); // scheduled for deletion add( svn_wc_status_deleted, "deleted" ); // was deleted and then re-added add( svn_wc_status_replaced, "replaced" ); // text or props have been modified add( svn_wc_status_modified, "modified" ); // local mods received repos mods add( svn_wc_status_merged, "merged" ); // local mods received conflicting repos mods add( svn_wc_status_conflicted, "conflicted" ); // a resource marked as ignored add( svn_wc_status_ignored, "ignored" ); // an unversioned resource is in the way of the versioned resource add( svn_wc_status_obstructed, "obstructed" ); // an unversioned path populated by an svn:external property add( svn_wc_status_external, "external" ); // a directory doesn't contain a complete entries list add( svn_wc_status_incomplete, "incomplete" ); } template <> EnumString< svn_wc_merge_outcome_t >::EnumString() : m_type_name( "wc_merge_outcome" ) { // The working copy is (or would be) unchanged. // The changes to be merged were already present in the working copy add( svn_wc_merge_unchanged, "unchanged" ); // The working copy has been (or would be) changed. add( svn_wc_merge_merged, "merged" ); // The working copy has been (or would be) changed, // but there was (or would be) a conflict add( svn_wc_merge_conflict, "conflict" ); // No merge was performed, probably because the target // file was either absent or not under version control. add( svn_wc_merge_no_merge, "no_merge" ); } template <> EnumString< svn_wc_notify_state_t >::EnumString() : m_type_name( "wc_notify_state" ) { add( svn_wc_notify_state_inapplicable, "inapplicable" ); // Notifier doesn't know or isn't saying. add( svn_wc_notify_state_unknown, "unknown" ); // The state did not change. add( svn_wc_notify_state_unchanged, "unchanged" ); // The item wasn't present. add( svn_wc_notify_state_missing, "missing" ); // An unversioned item obstructed work. add( svn_wc_notify_state_obstructed, "obstructed" ); // Pristine state was modified. add( svn_wc_notify_state_changed, "changed" ); // Modified state had mods merged in. add( svn_wc_notify_state_merged, "merged" ); // Modified state got conflicting mods. add( svn_wc_notify_state_conflicted, "conflicted" ); // QQQ: When was this symbol added? // The source to copy the file from is missing. add( svn_wc_notify_state_source_missing, "source_missing" ); } template <> EnumString< svn_wc_schedule_t >::EnumString() : m_type_name( "wc_schedule" ) { // Nothing special here add( svn_wc_schedule_normal, "normal" ); // Slated for addition add( svn_wc_schedule_add, "add" ); // Slated for deletion add( svn_wc_schedule_delete, "delete" ); // Slated for replacement (delete + add) add( svn_wc_schedule_replace, "replace" ); } template <> EnumString< svn_node_kind_t >::EnumString() : m_type_name( "node_kind" ) { // absent add( svn_node_none, "none" ); // regular file add( svn_node_file, "file" ); // directory add( svn_node_dir, "dir" ); // something's here, but we don't know what add( svn_node_unknown, "unknown" ); #if defined( PYSVN_HAS_SVN_1_8 ) // symbolic link // @note This value is not currently used by the public API. add( svn_node_symlink, "symlink" ); #endif } #if defined( PYSVN_HAS_DIFF_FILE_IGNORE_SPACE ) template <> EnumString< svn_diff_file_ignore_space_t >::EnumString() : m_type_name( "diff_file_ignore_space" ) { add( svn_diff_file_ignore_space_none, "none" ); add( svn_diff_file_ignore_space_change, "change" ); add( svn_diff_file_ignore_space_all, "all" ); } #endif #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) template <> EnumString< svn_client_diff_summarize_kind_t >::EnumString() : m_type_name( "diff_summarize" ) { /** An item with no text modifications */ add( svn_client_diff_summarize_kind_normal, "normal" ); /** An added item */ add( svn_client_diff_summarize_kind_added, "added" ); /** An item with text modifications */ add( svn_client_diff_summarize_kind_modified, "modified" ); /** A deleted item */ add( svn_client_diff_summarize_kind_deleted, "delete" ); } #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) template <> EnumString< svn_wc_conflict_action_t >::EnumString() : m_type_name( "conflict_action" ) { add( svn_wc_conflict_action_edit, "edit" ); add( svn_wc_conflict_action_add, "add" ); add( svn_wc_conflict_action_delete, "delete" ); } template <> EnumString< svn_wc_conflict_kind_t >::EnumString() : m_type_name( "conflict_kind" ) { add( svn_wc_conflict_kind_text, "text" ); add( svn_wc_conflict_kind_property, "property" ); } template <> EnumString< svn_wc_conflict_reason_t >::EnumString() : m_type_name( "conflict_reason" ) { // local edits are already present add( svn_wc_conflict_reason_edited, "edited" ); // another object is in the way add( svn_wc_conflict_reason_obstructed, "obstructed" ); // object is already schedule-delete add( svn_wc_conflict_reason_deleted, "deleted" ); // object is unknown or missing add( svn_wc_conflict_reason_missing, "missing" ); // object is unversioned add( svn_wc_conflict_reason_unversioned, "unversioned" ); #if defined( PYSVN_HAS_SVN_1_8 ) add( svn_wc_conflict_reason_moved_away, "moved_away" ); add( svn_wc_conflict_reason_moved_here, "moved_here" ); #endif } #endif #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) template <> EnumString< svn_depth_t >::EnumString() : m_type_name( "depth" ) { add( svn_depth_unknown, "unknown" ); add( svn_depth_exclude, "exclude" ); add( svn_depth_empty, "empty" ); add( svn_depth_files, "files" ); add( svn_depth_immediates, "immediates" ); add( svn_depth_infinity, "infinity" ); } #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) template <> EnumString< svn_wc_conflict_choice_t >::EnumString() : m_type_name( "wc_conflict_choice" ) { // Don't resolve the conflict now. Let libsvn_wc mark the path // 'conflicted', so user can run 'svn resolved' later. add( svn_wc_conflict_choose_postpone, "postpone" ); // If their were files to choose from, select one as a way of // resolving the conflict here and now. libsvn_wc will then do the // work of "installing" the chosen file. // user chooses the original version add( svn_wc_conflict_choose_base, "base" ); // user chooses incoming version add( svn_wc_conflict_choose_theirs_full, "theirs_full" ); // user chooses own version add( svn_wc_conflict_choose_mine_full, "mine_full" ); // user chooses incoming (for conflicted hunks) add( svn_wc_conflict_choose_theirs_conflict, "theirs_conflict" ); // user chooses own (for conflicted hunks) add( svn_wc_conflict_choose_mine_conflict, "mine_conflict" ); // user chooses the merged version add( svn_wc_conflict_choose_merged, "merged" ); #if defined( PYSVN_HAS_SVN_1_8 ) //undecided add( svn_wc_conflict_choose_unspecified, "unspecified" ); #endif } #endif #if defined( PYSVN_HAS_SVN_WC_OPERATION_T ) template <> EnumString< svn_wc_operation_t >::EnumString() : m_type_name( "wc_operation" ) { add( svn_wc_operation_none, "none" ); add( svn_wc_operation_update, "update" ); add( svn_wc_operation_switch, "switch" ); add( svn_wc_operation_merge, "merge" ); } #endif //-------------------------------------------------------------------------------- template <> void pysvn_enum< svn_opt_revision_kind >::init_type(void) { behaviors().name( "opt_revision_kind" ); behaviors().doc( "opt_revision_kind enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_opt_revision_kind >::init_type(void) { behaviors().name( "opt_revision_kind" ); behaviors().doc( "opt_revision_kind value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_notify_action_t >::init_type(void) { behaviors().name( "wc_notify_action" ); behaviors().doc( "wc_notify_action enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_notify_action_t >::init_type(void) { behaviors().name( "wc_notify_action" ); behaviors().doc( "wc_notify_action value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_status_kind >::init_type(void) { behaviors().name( "wc_status_kind" ); behaviors().doc( "wc_status_kind enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_status_kind >::init_type(void) { behaviors().name( "wc_status_kind" ); behaviors().doc( "wc_status_kind value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_schedule_t >::init_type(void) { behaviors().name( "wc_schedule" ); behaviors().doc( "wc_schedule enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_schedule_t >::init_type(void) { behaviors().name( "wc_schedule" ); behaviors().doc( "wc_schedule value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_merge_outcome_t >::init_type(void) { behaviors().name( "wc_merge_outcome" ); behaviors().doc( "wc_merge_outcome enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_merge_outcome_t >::init_type(void) { behaviors().name( "wc_merge_outcome" ); behaviors().doc( "wc_merge_outcome value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_notify_state_t >::init_type(void) { behaviors().name( "wc_notify_state" ); behaviors().doc( "wc_notify_state enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_notify_state_t >::init_type(void) { behaviors().name( "wc_notify_state" ); behaviors().doc( "wc_notify_state value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_node_kind_t >::init_type(void) { behaviors().name( "node_kind" ); behaviors().doc( "node_kind enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_node_kind_t >::init_type(void) { behaviors().name( "node_kind" ); behaviors().doc( "node_kind value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #if defined( PYSVN_HAS_DIFF_FILE_IGNORE_SPACE ) template <> void pysvn_enum< svn_diff_file_ignore_space_t >::init_type(void) { behaviors().name( "diff_file_ignore_space" ); behaviors().doc( "diff_file_ignore_space enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_diff_file_ignore_space_t >::init_type(void) { behaviors().name( "diff_file_ignore_space" ); behaviors().doc( "diff_file_ignore_space value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #endif #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) template <> void pysvn_enum< svn_client_diff_summarize_kind_t >::init_type(void) { behaviors().name( "client_diff_summarize_kind" ); behaviors().doc( "client_diff_summarize_kind enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_client_diff_summarize_kind_t >::init_type(void) { behaviors().name( "client_diff_summarize_kind" ); behaviors().doc( "client_diff_summarize_kind value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #endif #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) template <> void pysvn_enum< svn_depth_t >::init_type(void) { behaviors().name( "depth" ); behaviors().doc( "depth enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_depth_t >::init_type(void) { behaviors().name( "depth" ); behaviors().doc( "depth value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) template <> void pysvn_enum< svn_wc_conflict_choice_t >::init_type(void) { behaviors().name( "wc_conflict_choice" ); behaviors().doc( "wc_conflict_choice enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_conflict_choice_t >::init_type(void) { behaviors().name( "wc_conflict_choice" ); behaviors().doc( "wc_conflict_choice value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_conflict_action_t >::init_type(void) { behaviors().name( "wc_conflict_action" ); behaviors().doc( "wc_conflict_action enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_conflict_action_t >::init_type(void) { behaviors().name( "wc_conflict_action" ); behaviors().doc( "wc_conflict_action value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_conflict_kind_t >::init_type(void) { behaviors().name( "wc_conflict_kind" ); behaviors().doc( "wc_conflict_kind enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_conflict_kind_t >::init_type(void) { behaviors().name( "wc_conflict_kind" ); behaviors().doc( "wc_conflict_kind value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } template <> void pysvn_enum< svn_wc_conflict_reason_t >::init_type(void) { behaviors().name( "wc_conflict_reason" ); behaviors().doc( "wc_conflict_reason enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_conflict_reason_t >::init_type(void) { behaviors().name( "wc_conflict_reason" ); behaviors().doc( "wc_conflict_reason value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #endif #if defined( PYSVN_HAS_SVN_WC_OPERATION_T ) template <> void pysvn_enum< svn_wc_operation_t >::init_type(void) { behaviors().name( "wc_operation" ); behaviors().doc( "wc_operation enumeration" ); behaviors().supportGetattr(); } template <> void pysvn_enum_value< svn_wc_operation_t >::init_type(void) { behaviors().name( "wc_operation" ); behaviors().doc( "wc_operation value" ); behaviors().supportCompare(); behaviors().supportRichCompare(); behaviors().supportRepr(); behaviors().supportStr(); behaviors().supportHash(); } #endif pysvn-1.9.22/Source/run_vcexpress.cmd000644 000765 000024 00000000360 11264373560 020107 0ustar00barrystaff000000 000000 if "%SVN_VER_MAJ_MIN%" == "1.4" vcexpress pysvn-for-svn-1-4-msvc90.sln /useenv if "%SVN_VER_MAJ_MIN%" == "1.5" vcexpress pysvn-for-svn-1-5-msvc90.sln /useenv if "%SVN_VER_MAJ_MIN%" == "1.6" vcexpress pysvn-for-svn-1-6-msvc90.sln /useenv pysvn-1.9.22/Source/pysvn_client.cpp000644 000765 000024 00000076713 13331260703 017743 0ustar00barrystaff000000 000000 // // ==================================================================== // (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_docs.hpp" #include "pysvn_svnenv.hpp" #include "svn_path.h" #include "svn_config.h" #include "svn_sorts.h" #include "pysvn_static_strings.hpp" static const char *g_utf_8 = "utf-8"; static void init_py_names() { static bool init_done = false; if( init_done ) { return; } py_name_callback_cancel = new Py::String( name_callback_cancel ); py_name_callback_conflict_resolver = new Py::String( name_callback_conflict_resolver ); py_name_callback_get_log_message = new Py::String( name_callback_get_log_message ); py_name_callback_get_login = new Py::String( name_callback_get_login ); py_name_callback_notify = new Py::String( name_callback_notify ); py_name_callback_ssl_client_cert_password_prompt = new Py::String( name_callback_ssl_client_cert_password_prompt ); py_name_callback_ssl_client_cert_prompt = new Py::String( name_callback_ssl_client_cert_prompt ); py_name_callback_ssl_server_prompt = new Py::String( name_callback_ssl_server_prompt ); py_name_callback_ssl_server_trust_prompt = new Py::String( name_callback_ssl_server_trust_prompt ); py_name_commit_info_style = new Py::String( name_commit_info_style ); py_name_created_rev = new Py::String( name_created_rev ); py_name_exception_style = new Py::String( name_exception_style ); py_name_has_props = new Py::String( name_has_props ); py_name_kind = new Py::String( name_kind ); py_name_last_author = new Py::String( name_last_author ); py_name_lock = new Py::String( name_lock ); py_name_name = new Py::String( name_name ); py_name_node_kind = new Py::String( name_node_kind ); py_name_path = new Py::String( name_path ); py_name_prop_changed = new Py::String( name_prop_changed ); py_name_repos_path = new Py::String( name_repos_path ); py_name_size = new Py::String( name_size ); py_name_summarize_kind = new Py::String( name_summarize_kind ); py_name_time = new Py::String( name_time ); init_done = true; } //-------------------------------------------------------------------------------- #if defined( PYSVN_HAS_CLIENT_STATUS_T ) std::string name_wrapper_status2("PysvnStatus2"); #endif std::string name_wrapper_status("PysvnStatus"); std::string name_wrapper_entry("PysvnEntry"); std::string name_wrapper_info("PysvnInfo"); std::string name_wrapper_lock("PysvnLock"); std::string name_wrapper_list("PysvnList"); std::string name_wrapper_log("PysvnLog"); std::string name_wrapper_log_changed_path("PysvnLogChangedPath"); std::string name_wrapper_dirent("PysvnDirent"); std::string name_wrapper_wc_info("PysvnWcInfo"); std::string name_wrapper_diff_summary("PysvnDiffSummary"); std::string name_wrapper_commit_info("PysvnCommitInfo"); pysvn_client::pysvn_client ( pysvn_module &_module, const std::string &config_dir, Py::Dict result_wrappers ) : m_module( _module ) , m_result_wrappers( result_wrappers ) , m_context( config_dir ) , m_exception_style( 0 ) , m_commit_info_style( 0 ) #if defined( PYSVN_HAS_CLIENT_STATUS_T ) , m_wrapper_status2( result_wrappers, name_wrapper_status2 ) #endif , m_wrapper_status( result_wrappers, name_wrapper_status ) , m_wrapper_entry( result_wrappers, name_wrapper_entry ) , m_wrapper_info( result_wrappers, name_wrapper_info ) , m_wrapper_lock( result_wrappers, name_wrapper_lock ) , m_wrapper_list( result_wrappers, name_wrapper_list ) , m_wrapper_log( result_wrappers, name_wrapper_log ) , m_wrapper_log_changed_path( result_wrappers, name_wrapper_log_changed_path ) , m_wrapper_dirent( result_wrappers, name_wrapper_dirent ) , m_wrapper_wc_info( result_wrappers, name_wrapper_wc_info ) , m_wrapper_diff_summary( result_wrappers, name_wrapper_diff_summary ) , m_wrapper_commit_info( result_wrappers, name_wrapper_commit_info ) { init_py_names(); } pysvn_client::~pysvn_client() { } Py::Object pysvn_client::getattr( const char *_name ) { std::string name( _name ); // std::cout << "getattr( " << name << " )" << std::endl << std::flush; if( name == name___members__ ) { Py::List members; members.append( *py_name_callback_get_login ); members.append( *py_name_callback_notify ); members.append( *py_name_callback_cancel ); members.append( *py_name_callback_conflict_resolver ); members.append( *py_name_callback_get_log_message ); members.append( *py_name_callback_ssl_server_prompt ); members.append( *py_name_callback_ssl_server_trust_prompt ); members.append( *py_name_callback_ssl_client_cert_prompt ); members.append( *py_name_callback_ssl_client_cert_password_prompt ); members.append( *py_name_exception_style ); members.append( *py_name_commit_info_style ); return members; } if( name == name_callback_get_login ) return m_context.m_pyfn_GetLogin; if( name == name_callback_notify ) return m_context.m_pyfn_Notify; #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) if( name == name_callback_progress ) return m_context.m_pyfn_Progress; #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) if( name == name_callback_conflict_resolver ) return m_context.m_pyfn_ConflictResolver; #endif if( name == name_callback_cancel ) return m_context.m_pyfn_Cancel; if( name == name_callback_get_log_message ) return m_context.m_pyfn_GetLogMessage; if( name == name_callback_ssl_server_prompt ) return m_context.m_pyfn_SslServerPrompt; if( name == name_callback_ssl_server_trust_prompt ) return m_context.m_pyfn_SslServerTrustPrompt; if( name == name_callback_ssl_client_cert_prompt ) return m_context.m_pyfn_SslClientCertPrompt; if( name == name_callback_ssl_client_cert_password_prompt ) return m_context.m_pyfn_SslClientCertPwPrompt; if( name == name_callback_ssl_client_cert_password_prompt ) return m_context.m_pyfn_SslClientCertPwPrompt; if( name == name_exception_style ) return Py::Int( m_exception_style ); if( name == name_commit_info_style ) return Py::Int( m_commit_info_style ); return getattr_default( _name ); } static bool set_callable( Py::Object &callback, const Py::Object &value ) { if( value.isCallable() ) { callback = value; return true; } else if( value.is( Py::None() ) ) { callback = value; return false; } else { throw Py::AttributeError( "expecting None or a callable object" ); } } int pysvn_client::setattr( const char *_name, const Py::Object &value ) { std::string name( _name ); if( name == name_callback_get_login ) set_callable( m_context.m_pyfn_GetLogin, value ); else if( name == name_callback_notify ) m_context.installNotify( set_callable( m_context.m_pyfn_Notify, value ) ); #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) else if( name == name_callback_progress ) m_context.installProgress( set_callable( m_context.m_pyfn_Progress, value ) ); #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) else if( name == name_callback_conflict_resolver ) m_context.installConflictResolver( set_callable( m_context.m_pyfn_ConflictResolver, value ) ); #endif else if( name == name_callback_cancel ) m_context.installCancel( set_callable( m_context.m_pyfn_Cancel, value ) ); else if( name == name_callback_get_log_message ) set_callable( m_context.m_pyfn_GetLogMessage, value ); else if( name == name_callback_ssl_server_prompt ) set_callable( m_context.m_pyfn_SslServerPrompt, value ); else if( name == name_callback_ssl_server_trust_prompt ) set_callable( m_context.m_pyfn_SslServerTrustPrompt, value ); else if( name == name_callback_ssl_client_cert_prompt ) set_callable( m_context.m_pyfn_SslClientCertPrompt, value ); else if( name == name_callback_ssl_client_cert_password_prompt ) set_callable( m_context.m_pyfn_SslClientCertPwPrompt, value ); else if( name == name_exception_style ) { Py::Int style( value ); if( style == 0l || style == 1l ) { m_exception_style = style; } else { throw Py::AttributeError( "exception_style value must be 0 or 1" ); } } else if( name == name_commit_info_style ) { Py::Int style( value ); if( style == 0l || style == 1l || style == 2l ) { m_commit_info_style = style; } else { throw Py::AttributeError( "commit_info_style value must be 0, 1 or 2" ); } } else { std::string msg( "Unknown attribute: " ); msg += name; throw Py::AttributeError( msg ); } return 0; } Py::Object pysvn_client::helper_boolean_auth_set( FunctionArguments &a_args, const char *a_arg_name, const char *a_param_name ) { a_args.check(); bool enable( a_args.getBoolean( a_arg_name ) ); try { void *param = 0; if( !enable ) param = (void *)"1"; svn_auth_set_parameter ( m_context.ctx()->auth_baton, a_param_name, param ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } Py::Object pysvn_client::helper_boolean_auth_get( FunctionArguments &a_args, const char *a_param_name ) { a_args.check(); char *param = NULL; try { param = (char *)svn_auth_get_parameter ( m_context.ctx()->auth_baton, a_param_name ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } bool not_set = param != NULL && param[0] == '1'; if( not_set ) return Py::Int( 0 ); return Py::Int( 1 ); } Py::Object pysvn_client::helper_string_auth_set ( FunctionArguments &a_args, const char *a_arg_name, const char *a_param_name, std::string &ctx_str ) { a_args.check(); const char *param = NULL; Py::Object param_obj( a_args.getArg( a_arg_name ) ); if( !param_obj.is( Py::None() ) ) { Py::String param_str( param_obj ); ctx_str = param_str.as_std_string( g_utf_8 ); param = ctx_str.c_str(); } try { svn_auth_set_parameter ( m_context.ctx()->auth_baton, a_param_name, param ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } Py::Object pysvn_client::helper_string_auth_get( FunctionArguments &a_args, const char *a_param_name ) { a_args.check(); char *param = NULL; try { param = (char *)svn_auth_get_parameter ( m_context.ctx()->auth_baton, a_param_name ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } if( param != NULL ) return Py::String( param ); return Py::None(); } #if defined( PYSVN_HAS_WC_ADM_DIR ) Py::Object pysvn_client::get_adm_dir( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_adm_dir", args_desc, a_args, a_kws ); args.check(); const char *name = NULL; try { name = svn_wc_get_adm_dir ( m_context.getContextPool() ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::String( name ); } #endif Py::Object pysvn_client::get_auth_cache( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_auth_cache", args_desc, a_args, a_kws ); return helper_boolean_auth_get( args, SVN_AUTH_PARAM_NO_AUTH_CACHE ); } Py::Object pysvn_client::get_interactive( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_interactive", args_desc, a_args, a_kws ); return helper_boolean_auth_get( args, SVN_AUTH_PARAM_NON_INTERACTIVE ); } Py::Object pysvn_client::get_store_passwords( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_store_passwords", args_desc, a_args, a_kws ); return helper_boolean_auth_get( args, SVN_AUTH_PARAM_DONT_STORE_PASSWORDS ); } Py::Object pysvn_client::get_default_username( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_default_username", args_desc, a_args, a_kws ); return helper_string_auth_get( args, SVN_AUTH_PARAM_DEFAULT_USERNAME ); } Py::Object pysvn_client::get_default_password( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_default_password", args_desc, a_args, a_kws ); return helper_string_auth_get( args, SVN_AUTH_PARAM_DEFAULT_PASSWORD ); } #if defined( PYSVN_HAS_WC_ADM_DIR ) Py::Object pysvn_client::set_adm_dir( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_name }, { false, NULL } }; FunctionArguments args( "set_adm_dir", args_desc, a_args, a_kws ); args.check(); std::string name( args.getBytes( name_name ) ); try { svn_wc_set_adm_dir ( name.c_str(), m_context.getContextPool() ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #endif Py::Object pysvn_client::set_auth_cache( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_enable }, { false, NULL } }; FunctionArguments args( "set_auth_cache", args_desc, a_args, a_kws ); return helper_boolean_auth_set( args, name_enable, SVN_AUTH_PARAM_NO_AUTH_CACHE ); } Py::Object pysvn_client::set_interactive( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_enable }, { false, NULL } }; FunctionArguments args( "set_interactive", args_desc, a_args, a_kws ); return helper_boolean_auth_set( args, name_enable, SVN_AUTH_PARAM_NON_INTERACTIVE ); } Py::Object pysvn_client::set_store_passwords( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_enable }, { false, NULL } }; FunctionArguments args( "set_store_passwords", args_desc, a_args, a_kws ); return helper_boolean_auth_set( args, name_enable, SVN_AUTH_PARAM_DONT_STORE_PASSWORDS ); } Py::Object pysvn_client::set_default_username( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_username }, { false, NULL } }; FunctionArguments args( "set_default_username", args_desc, a_args, a_kws ); return helper_string_auth_set( args, name_username, SVN_AUTH_PARAM_DEFAULT_USERNAME, m_context.m_default_username ); } Py::Object pysvn_client::set_default_password( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_password }, { false, NULL } }; FunctionArguments args( "set_default_password", args_desc, a_args, a_kws ); return helper_string_auth_set( args, name_password, SVN_AUTH_PARAM_DEFAULT_PASSWORD, m_context.m_default_password ); } Py::Object pysvn_client::get_auto_props( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { false, NULL } }; FunctionArguments args( "get_auto_props", args_desc, a_args, a_kws ); args.check(); svn_boolean_t enable = false; try { svn_config_t *cfg = (svn_config_t *)apr_hash_get ( m_context.ctx()->config, SVN_CONFIG_CATEGORY_CONFIG, APR_HASH_KEY_STRING ); svn_error_t *error = svn_config_get_bool ( cfg, &enable, SVN_CONFIG_SECTION_MISCELLANY, SVN_CONFIG_OPTION_ENABLE_AUTO_PROPS, enable ); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::Int( enable ); } Py::Object pysvn_client::set_auto_props( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_enable }, { false, NULL } }; FunctionArguments args( "set_auto_props", args_desc, a_args, a_kws ); args.check(); bool enable( args.getBoolean( name_enable ) ); try { svn_config_t *cfg = (svn_config_t *)apr_hash_get ( m_context.ctx()->config, SVN_CONFIG_CATEGORY_CONFIG, APR_HASH_KEY_STRING ); svn_config_set_bool ( cfg, SVN_CONFIG_SECTION_MISCELLANY, SVN_CONFIG_OPTION_ENABLE_AUTO_PROPS, enable ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #if defined( PYSVN_HAS_WC_ADM_DIR ) Py::Object pysvn_client::is_adm_dir( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_name }, { false, NULL } }; FunctionArguments args( "is_adm_dir", args_desc, a_args, a_kws ); args.check(); std::string name( args.getBytes( name_name ) ); svn_boolean_t name_is_adm_dir = 0; try { name_is_adm_dir = svn_wc_is_adm_dir ( name.c_str(), m_context.getContextPool() ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::Int( name_is_adm_dir ); } #endif Py::Object pysvn_client::is_url( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url }, { false, NULL } }; FunctionArguments args( "is_url", args_desc, a_args, a_kws ); args.check(); Py::String path( args.getUtf8String( name_url ) ); Py::Int result( is_svn_url( path ) ); return result; } #if defined( PYSVN_HAS_CLIENT_ROOT_URL_FROM_PATH ) Py::Object pysvn_client::cmd_root_url_from_path( const Py::Tuple& a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, NULL } }; FunctionArguments args( "root_url_from_path", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); SvnPool pool( m_context ); const char *root_url = NULL; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); // known to call back into pysvn #if defined( PYSVN_HAS_CLIENT_GET_REPOS_ROOT ) const char *repos_uuid = NULL; svn_error_t *error = svn_client_get_repos_root ( &root_url, &repos_uuid, norm_path.c_str(), m_context, pool, pool ); #else svn_error_t *error = svn_client_root_url_from_path ( &root_url, norm_path.c_str(), m_context, pool ); #endif if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::String( root_url ); } #endif // check that we are not in use on another thread void pysvn_client::checkThreadPermission() { if( m_context.hasPermission() ) { throw Py::BaseException( m_module.client_error, "client in use on another thread" ); } } void pysvn_client::throw_client_error( SvnException &e ) { throw Py::BaseException( m_module.client_error, e.pythonExceptionArg( m_exception_style ) ); } void revisionKindCompatibleCheck ( bool is_url, const svn_opt_revision_t &revision, const char *revision_name, const char *url_or_path_name ) { std::string message; if( is_url ) { // URL compatibility switch( revision.kind ) { case svn_opt_revision_number: case svn_opt_revision_date: case svn_opt_revision_committed: case svn_opt_revision_previous: case svn_opt_revision_head: case svn_opt_revision_unspecified: break; case svn_opt_revision_working: case svn_opt_revision_base: default: message += revision_name; message += " is not compatible with URL "; message += url_or_path_name; throw Py::AttributeError( message ); } } #if defined( there_are_any_checks_for_path ) else { // PATH compatibility switch( revision.kind ) { case svn_opt_revision_working: case svn_opt_revision_base: case svn_opt_revision_unspecified: break; case svn_opt_revision_number: case svn_opt_revision_date: case svn_opt_revision_committed: case svn_opt_revision_previous: case svn_opt_revision_head: default: message += revision_name; message += " is not compatible with path "; message += url_or_path_name; throw Py::AttributeError( message ); } } #endif } void pysvn_client::init_type() { behaviors().name("Client"); behaviors().doc( pysvn_client_doc ); behaviors().supportGetattr(); behaviors().supportSetattr(); add_keyword_method("add", &pysvn_client::cmd_add, pysvn_client_add_doc ); #if defined( PYSVN_HAS_CLIENT_ADD_TO_CHANGELIST ) add_keyword_method("add_to_changelist", &pysvn_client::cmd_add_to_changelist, pysvn_client_add_to_changelist_doc ); #endif add_keyword_method("annotate", &pysvn_client::cmd_annotate, pysvn_client_annotate_doc ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE5 ) add_keyword_method("annotate2", &pysvn_client::cmd_annotate2, pysvn_client_annotate2_doc ); #endif add_keyword_method("cat", &pysvn_client::cmd_cat, pysvn_client_cat_doc ); add_keyword_method("checkin", &pysvn_client::cmd_checkin, pysvn_client_checkin_doc ); add_keyword_method("checkout", &pysvn_client::cmd_checkout, pysvn_client_checkout_doc ); add_keyword_method("cleanup", &pysvn_client::cmd_cleanup, pysvn_client_cleanup_doc ); add_keyword_method("copy", &pysvn_client::cmd_copy, pysvn_client_copy_doc ); #if defined( PYSVN_HAS_CLIENT_COPY4 ) add_keyword_method("copy2", &pysvn_client::cmd_copy2, pysvn_client_copy2_doc ); #endif add_keyword_method("diff", &pysvn_client::cmd_diff, pysvn_client_diff_doc ); #if defined( PYSVN_HAS_CLIENT_DIFF_PEG ) add_keyword_method("diff_peg", &pysvn_client::cmd_diff_peg, pysvn_client_diff_peg_doc ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) add_keyword_method("diff_summarize", &pysvn_client::cmd_diff_summarize, pysvn_client_diff_summarize_doc ); add_keyword_method("diff_summarize_peg", &pysvn_client::cmd_diff_summarize_peg, pysvn_client_diff_summarize_peg_doc ); #endif add_keyword_method("export", &pysvn_client::cmd_export, pysvn_client_export_doc ); #if defined( PYSVN_HAS_CLIENT_GET_CHANGELIST ) add_keyword_method("get_changelist", &pysvn_client::cmd_get_changelist, pysvn_client_get_changelist_doc ); #endif #if defined( PYSVN_HAS_WC_ADM_DIR ) add_keyword_method("get_adm_dir", &pysvn_client::get_adm_dir, pysvn_client_get_adm_dir_doc ); #endif add_keyword_method("get_auth_cache", &pysvn_client::get_auth_cache, pysvn_client_get_auth_cache_doc ); add_keyword_method("get_auto_props", &pysvn_client::get_auto_props, pysvn_client_get_auto_props_doc ); add_keyword_method("get_default_password", &pysvn_client::get_default_password, pysvn_client_get_default_password_doc ); add_keyword_method("get_default_username", &pysvn_client::get_default_username, pysvn_client_get_default_username_doc ); add_keyword_method("get_interactive", &pysvn_client::get_interactive, pysvn_client_get_interactive_doc ); add_keyword_method("get_store_passwords", &pysvn_client::get_store_passwords, pysvn_client_get_store_passwords_doc ); add_keyword_method("import_", &pysvn_client::cmd_import, pysvn_client_import__doc ); add_keyword_method("info", &pysvn_client::cmd_info, pysvn_client_info_doc ); #if defined( PYSVN_HAS_CLIENT_INFO ) add_keyword_method("info2", &pysvn_client::cmd_info2, pysvn_client_info2_doc ); #endif #if defined( PYSVN_HAS_WC_ADM_DIR ) add_keyword_method("is_adm_dir", &pysvn_client::is_adm_dir, pysvn_client_is_adm_dir_doc ); #endif add_keyword_method("is_url", &pysvn_client::is_url, pysvn_client_is_url_doc ); #if defined( PYSVN_HAS_CLIENT_LOCK ) add_keyword_method("lock", &pysvn_client::cmd_lock, pysvn_client_lock_doc ); #endif add_keyword_method("log", &pysvn_client::cmd_log, pysvn_client_log_doc ); #if defined( PYSVN_HAS_CLIENT_LIST ) add_keyword_method("list", &pysvn_client::cmd_list, pysvn_client_list_doc ); #endif add_keyword_method("ls", &pysvn_client::cmd_ls, pysvn_client_ls_doc ); add_keyword_method("merge", &pysvn_client::cmd_merge, pysvn_client_merge_doc ); #if defined( PYSVN_HAS_CLIENT_MERGE_PEG ) add_keyword_method("merge_peg", &pysvn_client::cmd_merge_peg, pysvn_client_merge_peg_doc ); #endif #if defined( PYSVN_HAS_CLIENT_MERGE_PEG3 ) add_keyword_method("merge_peg2", &pysvn_client::cmd_merge_peg2, pysvn_client_merge_peg2_doc ); #endif #if defined( PYSVN_HAS_CLIENT_MERGE_REINTEGRATE ) add_keyword_method("merge_reintegrate", &pysvn_client::cmd_merge_reintegrate, pysvn_client_merge_reintegrate_doc ); #endif add_keyword_method("mkdir", &pysvn_client::cmd_mkdir, pysvn_client_mkdir_doc ); #if defined( PYSVN_HAS_CLIENT_MOVE5 ) add_keyword_method("move2", &pysvn_client::cmd_move2, pysvn_client_move2_doc ); #endif add_keyword_method("move", &pysvn_client::cmd_move, pysvn_client_move_doc ); #if defined( PYSVN_HAS_CLIENT_PATCH ) add_keyword_method("patch", &pysvn_client::cmd_patch, pysvn_client_patch_doc ); #endif add_keyword_method("propdel", &pysvn_client::cmd_propdel, pysvn_client_propdel_doc ); add_keyword_method("propget", &pysvn_client::cmd_propget, pysvn_client_propget_doc ); add_keyword_method("proplist", &pysvn_client::cmd_proplist, pysvn_client_proplist_doc ); add_keyword_method("propset", &pysvn_client::cmd_propset, pysvn_client_propset_doc ); #if defined( PYSVN_HAS_CLIENT_PROPSET_LOCAL ) add_keyword_method("propdel_local", &pysvn_client::cmd_propdel_local, pysvn_client_propdel_local_doc ); add_keyword_method("propset_local", &pysvn_client::cmd_propset_local, pysvn_client_propset_local_doc ); #endif #if defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) add_keyword_method("propdel_remote", &pysvn_client::cmd_propdel_remote, pysvn_client_propdel_remote_doc ); add_keyword_method("propset_remote", &pysvn_client::cmd_propset_remote, pysvn_client_propset_remote_doc ); #endif add_keyword_method("relocate", &pysvn_client::cmd_relocate, pysvn_client_relocate_doc ); add_keyword_method("remove", &pysvn_client::cmd_remove, pysvn_client_remove_doc ); #if defined( PYSVN_HAS_CLIENT_REMOVE_FROM_CHANGELISTS ) add_keyword_method("remove_from_changelists", &pysvn_client::cmd_remove_from_changelists, pysvn_client_remove_from_changelists_doc ); #endif add_keyword_method("resolved", &pysvn_client::cmd_resolved, pysvn_client_resolved_doc ); add_keyword_method("revert", &pysvn_client::cmd_revert, pysvn_client_revert_doc ); add_keyword_method("revpropdel", &pysvn_client::cmd_revpropdel, pysvn_client_revpropdel_doc ); add_keyword_method("revpropget", &pysvn_client::cmd_revpropget, pysvn_client_revpropget_doc ); add_keyword_method("revproplist", &pysvn_client::cmd_revproplist, pysvn_client_revproplist_doc ); add_keyword_method("revpropset", &pysvn_client::cmd_revpropset, pysvn_client_revpropset_doc ); #if defined( PYSVN_HAS_CLIENT_ROOT_URL_FROM_PATH ) add_keyword_method("root_url_from_path", &pysvn_client::cmd_root_url_from_path, pysvn_client_root_url_from_path_doc ); #endif #if defined( PYSVN_HAS_WC_ADM_DIR ) add_keyword_method("set_adm_dir", &pysvn_client::set_adm_dir, pysvn_client_set_adm_dir_doc ); #endif add_keyword_method("set_auth_cache", &pysvn_client::set_auth_cache, pysvn_client_set_auth_cache_doc ); add_keyword_method("set_auto_props", &pysvn_client::set_auto_props, pysvn_client_set_auto_props_doc ); add_keyword_method("set_default_password", &pysvn_client::set_default_password, pysvn_client_set_default_password_doc ); add_keyword_method("set_default_username", &pysvn_client::set_default_username, pysvn_client_set_default_username_doc ); add_keyword_method("set_interactive", &pysvn_client::set_interactive, pysvn_client_set_interactive_doc ); add_keyword_method("set_store_passwords", &pysvn_client::set_store_passwords, pysvn_client_set_store_passwords_doc ); #if defined( PYSVN_HAS_CLIENT_STATUS5 ) add_keyword_method("status2", &pysvn_client::cmd_status2, pysvn_client_status2_doc ); #endif add_keyword_method("status", &pysvn_client::cmd_status, pysvn_client_status_doc ); add_keyword_method("switch", &pysvn_client::cmd_switch, pysvn_client_switch_doc ); #if defined( PYSVN_HAS_CLIENT_LOCK ) add_keyword_method("unlock", &pysvn_client::cmd_unlock, pysvn_client_unlock_doc ); #endif #if defined( PYSVN_HAS_CLIENT_UPGRADE ) add_keyword_method("upgrade", &pysvn_client::cmd_upgrade, pysvn_client_upgrade_doc ); #endif add_keyword_method("update", &pysvn_client::cmd_update, pysvn_client_update_doc ); #if defined( PYSVN_HAS_CLIENT_VACUUM ) add_keyword_method("vacuum", &pysvn_client::cmd_vacuum, pysvn_client_vacuum_doc ); #endif } pysvn-1.9.22/Source/setup_backport_probe.py000644 000765 000024 00000000746 11132131027 021272 0ustar00barrystaff000000 000000 # # ==================================================================== # (c) 2005-2009 Barry A Scott. All rights reserved. # # This software is licensed as described in the file LICENSE.txt, # which you should have received as part of this distribution. # # ==================================================================== # # # setup_backport_probe.py # # loading this module to test for the need to run the backport command # try: pass except ValueError as e: pass pysvn-1.9.22/Source/pysvn_client_cmd_switch.cpp000644 000765 000024 00000013640 12703754337 022152 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_prop.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" Py::Object pysvn_client::cmd_relocate( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_from_url }, { true, name_to_url }, { true, name_path }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_RELOCATE2 ) { false, name_ignore_externals }, #endif { false, NULL } }; FunctionArguments args( "relocate", args_desc, a_args, a_kws ); args.check(); std::string from_url( args.getUtf8String( name_from_url ) ); std::string to_url( args.getUtf8String( name_to_url ) ); std::string path( args.getUtf8String( name_path ) ); #if defined( PYSVN_HAS_CLIENT_RELOCATE2 ) bool ignore_externals = args.getBoolean( name_ignore_externals, true ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif SvnPool pool( m_context ); try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); std::string norm_to_url( svnNormalisedIfPath( to_url, pool ) ); std::string norm_from_url( svnNormalisedIfPath( from_url, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_RELOCATE2 ) svn_error_t *error = svn_client_relocate2 ( norm_path.c_str(), norm_from_url.c_str(), norm_to_url.c_str(), ignore_externals, m_context, pool ); #else svn_error_t *error = svn_client_relocate ( norm_path.c_str(), norm_from_url.c_str(), norm_to_url.c_str(), recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } Py::Object pysvn_client::cmd_switch( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { true, name_url }, { false, name_recurse }, { false, name_revision }, #if defined( PYSVN_HAS_CLIENT_SWITCH2 ) { false, name_depth }, { false, name_peg_revision }, { false, name_depth_is_sticky }, { false, name_ignore_externals }, { false, name_allow_unver_obstructions }, #endif #if defined( PYSVN_HAS_CLIENT_SWITCH3 ) { false, name_ignore_ancestry }, #endif { false, NULL } }; FunctionArguments args( "switch", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); std::string url( args.getUtf8String( name_url ) ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); #if defined( PYSVN_HAS_CLIENT_SWITCH2 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); svn_boolean_t depth_is_sticky = args.getBoolean( name_depth_is_sticky, false ); svn_boolean_t ignore_externals = args.getBoolean( name_ignore_externals, false ); svn_boolean_t allow_unver_obstructions = args.getBoolean( name_allow_unver_obstructions, false ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_SWITCH3 ) bool ignore_ancestry = args.getBoolean( name_ignore_ancestry, false ); #endif SvnPool pool( m_context ); svn_revnum_t revnum = 0; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); std::string norm_url( svnNormalisedIfPath( url, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_SWITCH3 ) svn_error_t *error = svn_client_switch3 ( &revnum, norm_path.c_str(), norm_url.c_str(), &peg_revision, &revision, depth, depth_is_sticky, ignore_externals, allow_unver_obstructions, ignore_ancestry, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_SWITCH2 ) svn_error_t *error = svn_client_switch2 ( &revnum, norm_path.c_str(), norm_url.c_str(), &peg_revision, &revision, depth, depth_is_sticky, ignore_externals, allow_unver_obstructions, m_context, pool ); #else svn_error_t *error = svn_client_switch ( &revnum, norm_path.c_str(), norm_url.c_str(), &revision, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); } pysvn-1.9.22/Source/pysvn_client_cmd_revprop.cpp000644 000765 000024 00000016043 12705402764 022342 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_prop.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" Py::Object pysvn_client::cmd_revpropdel( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_url }, #if defined( PYSVN_HAS_CLIENT_REVPROP_SET2 ) { false, name_original_prop_value }, #endif { false, name_revision }, { false, name_force }, { false, NULL } }; FunctionArguments args( "revpropdel", args_desc, a_args, a_kws ); args.check(); return common_revpropset( args, false ); } Py::Object pysvn_client::cmd_revpropset( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_prop_value }, { true, name_url }, #if defined( PYSVN_HAS_CLIENT_REVPROP_SET2 ) { false, name_original_prop_value }, #endif { false, name_revision }, { false, name_force }, { false, NULL } }; FunctionArguments args( "revpropset", args_desc, a_args, a_kws ); args.check(); return common_revpropset( args, true ); } Py::Object pysvn_client::common_revpropset( FunctionArguments &args, bool is_set ) { std::string propname( args.getUtf8String( name_prop_name ) ); std::string propval; if( is_set ) { propval = args.getUtf8String( name_prop_value ); } std::string original_propval; bool has_original_propval = args.hasArgNotNone( name_original_prop_value ); if( has_original_propval ) { original_propval = args.getUtf8String( name_original_prop_value ); } std::string path( args.getUtf8String( name_url ) ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); bool force = args.getBoolean( name_force, false ); SvnPool pool( m_context ); svn_revnum_t revnum = 0; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); const svn_string_t *svn_propval = NULL; if( is_set ) { svn_propval = svn_string_ncreate( propval.c_str(), propval.size(), pool ); } #if defined( PYSVN_HAS_CLIENT_REVPROP_SET2 ) const svn_string_t *svn_original_propval = NULL; if( has_original_propval ) { svn_original_propval = svn_string_ncreate( original_propval.c_str(), original_propval.size(), pool ); } svn_error_t *error = svn_client_revprop_set2 ( propname.c_str(), svn_propval, svn_original_propval, norm_path.c_str(), &revision, &revnum, force, m_context, pool ); #else svn_error_t *error = svn_client_revprop_set ( propname.c_str(), svn_propval, norm_path.c_str(), &revision, &revnum, force, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); } Py::Object pysvn_client::cmd_revpropget( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_prop_name }, { true, name_url }, { false, name_revision }, { false, NULL } }; FunctionArguments args( "revpropget", args_desc, a_args, a_kws ); args.check(); std::string propname( args.getUtf8String( name_prop_name ) ); std::string path( args.getUtf8String( name_url ) ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); SvnPool pool( m_context ); svn_string_t *propval = NULL; svn_revnum_t revnum = 0; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t * error = svn_client_revprop_get ( propname.c_str(), &propval, norm_path.c_str(), &revision, &revnum, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } Py::Tuple result(2); result[0] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); // prop_name that is not in this rev returns a NULL value if( propval == NULL ) { result[1] = Py::None(); } else { result[1] = Py::String( propval->data, propval->len, name_utf8 ); } return result; } Py::Object pysvn_client::cmd_revproplist( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url }, { false, name_revision }, { false, NULL } }; FunctionArguments args( "revproplist", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url ) ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); SvnPool pool( m_context ); apr_hash_t *props = NULL; svn_revnum_t revnum = 0; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_revprop_list ( &props, norm_path.c_str(), &revision, &revnum, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } Py::Tuple result(2); result[0] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); result[1] = propsToObject( props, pool ); return result; } pysvn-1.9.22/Source/pysvn_version.hpp.template000644 000765 000024 00000001136 11110632344 021751 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2007 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_version.hpp.template // #ifndef __PYSVN_VERSION_HPP__ #define __PYSVN_VERSION_HPP__ const int version_major( %(MAJOR)s ); const int version_minor( %(MINOR)s ); const int version_patch( %(PATCH)s ); const int version_build( %(BUILD)s ); #endif pysvn-1.9.22/Source/pysvn_client_cmd_lock.cpp000644 000765 000024 00000007231 11132131027 021554 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_list.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "pysvn_static_strings.hpp" #if defined( PYSVN_HAS_CLIENT_LOCK ) Py::Object pysvn_client::cmd_lock( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { true, name_comment }, { false, name_force }, { false, NULL } }; FunctionArguments args( "lock", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_url_or_path ), pool ); std::string type_error_message; try { type_error_message = "expecting string for comment (arg 2)"; std::string comment( args.getUtf8String( name_comment ) ); type_error_message = "expecting boolean for force keyword arg"; bool force = args.getBoolean( name_force, false ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_lock ( targets, comment.c_str(), force, // non recursive m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif #if defined( PYSVN_HAS_CLIENT_LOCK ) Py::Object pysvn_client::cmd_unlock( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_force }, { false, NULL } }; FunctionArguments args( "unlock", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_url_or_path ), pool ); std::string type_error_message; try { type_error_message = "expecting boolean for force keyword arg"; bool force = args.getBoolean( name_force, true ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_unlock ( targets, force, m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif pysvn-1.9.22/Source/pysvn_client_cmd_diff.cpp000644 000765 000024 00000072041 14175474070 021557 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_diff.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" class PySvnAprFile { public: PySvnAprFile( SvnPool &pool ) : m_pool( pool ) , m_apr_file( NULL ) , m_filename( NULL ) { } ~PySvnAprFile() { close(); if( m_filename ) { svn_error_clear( svn_io_remove_file2( m_filename, TRUE, m_pool ) ); } } void open_unique_file( const std::string &tmp_dir ) { svn_error_t *error = svn_io_open_unique_file3 ( &m_apr_file, &m_filename, tmp_dir.c_str(), svn_io_file_del_none, m_pool, m_pool ); if( error != NULL ) { throw SvnException( error ); } } void readIntoStringBuf( svn_stringbuf_t **stringbuf ) { close(); apr_status_t status = apr_file_open( &m_apr_file, m_filename, APR_READ, APR_OS_DEFAULT, m_pool ); if( status ) { std::string msg( "opening file " ); msg += m_filename; throw SvnException( svn_error_create( status, NULL, msg.c_str() ) ); } svn_error_t *error = svn_stringbuf_from_aprfile( stringbuf, m_apr_file, m_pool ); if( error != NULL ) { throw SvnException( error ); } } void close() { // only close if we have an open file if( m_apr_file == NULL ) { return; } apr_file_t *apr_file = m_apr_file; // prevent closing the file twice m_apr_file = NULL; apr_status_t status = apr_file_close( apr_file ); if( status ) { std::string msg( "closing file " ); msg += m_filename; throw SvnException( svn_error_create( status, NULL, msg.c_str() ) ); } } apr_file_t *file() { return m_apr_file; } private: SvnPool &m_pool; apr_file_t *m_apr_file; const char *m_filename; }; class PySvnSvnStream { public: PySvnSvnStream( SvnPool &pool ) : m_pool( pool ) , m_svn_stream( NULL ) , m_filename( NULL ) { } ~PySvnSvnStream() { close(); if( m_filename ) { svn_error_clear( svn_io_remove_file2( m_filename, TRUE, m_pool ) ); } } void open_unique_file( const std::string &tmp_dir ) { svn_error_t *error = svn_stream_open_unique ( &m_svn_stream, &m_filename, tmp_dir.c_str(), svn_io_file_del_none, m_pool, m_pool ); if( error != NULL ) { throw SvnException( error ); } } void readIntoStringBuf( svn_stringbuf_t **stringbuf ) { close(); svn_error_t *error = svn_stringbuf_from_file2( stringbuf, m_filename, m_pool ); if( error != NULL ) { throw SvnException( error ); } } void close() { // only close if we have an open file if( m_svn_stream == NULL ) { return; } svn_stream_t *svn_stream = m_svn_stream; // prevent closing the file twice m_svn_stream = NULL; svn_error_t *error = svn_stream_close( svn_stream ); if( error ) { throw SvnException( error ); } } svn_stream_t *stream() { return m_svn_stream; } private: SvnPool &m_pool; svn_stream_t *m_svn_stream; const char *m_filename; }; Py::Object pysvn_client::cmd_diff( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_tmp_path }, { true, name_url_or_path }, { false, name_revision1 }, { false, name_url_or_path2 }, { false, name_revision2 }, { false, name_recurse }, { false, name_ignore_ancestry }, { false, name_diff_deleted }, #if defined( PYSVN_HAS_CLIENT_DIFF2 ) { false, name_ignore_content_type }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF3 ) { false, name_header_encoding }, { false, name_diff_options }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF4 ) { false, name_depth }, { false, name_relative_to_dir }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF5 ) { false, name_show_copies_as_adds }, { false, name_use_git_diff_format }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF6 ) { false, name_diff_added }, { false, name_ignore_properties }, { false, name_properties_only }, #endif { false, name_return_bytes }, { false, NULL } }; FunctionArguments args( "diff", args_desc, a_args, a_kws ); args.check(); std::string tmp_path( args.getUtf8String( name_tmp_path ) ); std::string path1( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_t revision1 = args.getRevision( name_revision1, svn_opt_revision_base ); std::string path2( args.getUtf8String( name_url_or_path2, path1 ) ); svn_opt_revision_t revision2 = args.getRevision( name_revision2, svn_opt_revision_working ); #if defined( PYSVN_HAS_CLIENT_DIFF4 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool ignore_ancestry = args.getBoolean( name_ignore_ancestry, true ); bool diff_deleted = args.getBoolean( name_diff_deleted, true ); #if defined( PYSVN_HAS_CLIENT_DIFF2 ) bool ignore_content_type = args.getBoolean( name_ignore_content_type, false ); #endif bool return_bytes = args.getBoolean( name_return_bytes, false ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF3 ) std::string header_encoding( args.getUtf8String( name_header_encoding, empty_string ) ); const char *header_encoding_ptr = APR_LOCALE_CHARSET; if( !header_encoding.empty() ) header_encoding_ptr = header_encoding.c_str(); apr_array_header_t *options = NULL; if( args.hasArg( name_diff_options ) ) { options = arrayOfStringsFromListOfStrings( args.getArg( name_diff_options ), pool ); } else { options = apr_array_make( pool, 0, sizeof( const char * ) ); } #else apr_array_header_t *options = apr_array_make( pool, 0, sizeof( const char * ) ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF4 ) std::string std_relative_to_dir; const char *relative_to_dir = NULL; if( args.hasArg( name_relative_to_dir ) ) { std_relative_to_dir = svnNormalisedIfPath( args.getUtf8String( name_relative_to_dir ), pool ); relative_to_dir = std_relative_to_dir.c_str(); } apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } #endif #if defined( PYSVN_HAS_CLIENT_DIFF5 ) bool show_copies_as_adds = args.getBoolean( name_show_copies_as_adds, false ); bool use_git_diff_format = args.getBoolean( name_use_git_diff_format, false ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF6 ) bool diff_added = args.getBoolean( name_diff_added, true ); bool ignore_properties = args.getBoolean( name_ignore_properties, false ); bool properties_only = args.getBoolean( name_properties_only, false ); #endif svn_stringbuf_t *stringbuf = NULL; try { std::string norm_tmp_path( svnNormalisedIfPath( tmp_path, pool ) ); std::string norm_path1( svnNormalisedIfPath( path1, pool ) ); std::string norm_path2( svnNormalisedIfPath( path2, pool ) ); checkThreadPermission(); #if defined( PYSVN_HAS_CLIENT_DIFF6 ) PySvnSvnStream output_stream( pool ); PySvnSvnStream error_stream( pool ); output_stream.open_unique_file( norm_tmp_path ); error_stream.open_unique_file( norm_tmp_path ); #else PySvnAprFile output_file( pool ); PySvnAprFile error_file( pool ); output_file.open_unique_file( norm_tmp_path ); error_file.open_unique_file( norm_tmp_path ); #endif PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF6 ) svn_error_t *error = svn_client_diff6 ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, relative_to_dir, depth, ignore_ancestry, !diff_added, !diff_deleted, show_copies_as_adds, ignore_content_type, ignore_properties, properties_only, use_git_diff_format, header_encoding_ptr, output_stream.stream(), error_stream.stream(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF5 ) svn_error_t *error = svn_client_diff5 ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, relative_to_dir, depth, ignore_ancestry, !diff_deleted, show_copies_as_adds, ignore_content_type, use_git_diff_format, header_encoding_ptr, output_file.file(), error_file.file(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF4 ) svn_error_t *error = svn_client_diff4 ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, relative_to_dir, depth, ignore_ancestry, !diff_deleted, ignore_content_type, header_encoding_ptr, output_file.file(), error_file.file(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF3 ) svn_error_t *error = svn_client_diff3 ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, recurse, ignore_ancestry, !diff_deleted, ignore_content_type, header_encoding_ptr, output_file.file(), error_file.file(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF2 ) svn_error_t *error = svn_client_diff2 ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, recurse, ignore_ancestry, !diff_deleted, ignore_content_type, output_file.file(), error_file.file(), m_context, pool ); #else svn_error_t *error = svn_client_diff ( options, norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, recurse, ignore_ancestry, !diff_deleted, output_file.file(), error_file.file(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); #if defined( PYSVN_HAS_CLIENT_DIFF6 ) output_stream.readIntoStringBuf( &stringbuf ); #else output_file.readIntoStringBuf( &stringbuf ); #endif } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } if( return_bytes ) { return Py::Bytes( stringbuf->data, (int)stringbuf->len ); } else { // assume that the data is UTF-8 return Py::String( stringbuf->data, (int)stringbuf->len, name_utf8 ); } } #if defined( PYSVN_HAS_CLIENT_DIFF_PEG ) Py::Object pysvn_client::cmd_diff_peg( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_tmp_path }, { true, name_url_or_path }, { false, name_peg_revision }, { false, name_revision_start }, { false, name_revision_end }, { false, name_recurse }, { false, name_ignore_ancestry }, { false, name_diff_deleted }, #if defined( PYSVN_HAS_CLIENT_DIFF_PEG2 ) { false, name_ignore_content_type }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG3 ) { false, name_header_encoding }, { false, name_diff_options }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG4 ) { false, name_depth }, { false, name_relative_to_dir }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG5 ) { false, name_show_copies_as_adds }, { false, name_use_git_diff_format }, #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG6 ) { false, name_diff_added }, { false, name_ignore_properties }, { false, name_properties_only }, #endif { false, name_return_bytes }, { false, NULL } }; FunctionArguments args( "diff_peg", args_desc, a_args, a_kws ); args.check(); std::string tmp_path( args.getUtf8String( name_tmp_path ) ); std::string path( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_base ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_working ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision_end ); bool return_bytes = args.getBoolean( name_return_bytes, false ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF_PEG4 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); std::string std_relative_to_dir; const char *relative_to_dir = NULL; if( args.hasArg( name_relative_to_dir ) ) { std_relative_to_dir = svnNormalisedIfPath( args.getUtf8String( name_relative_to_dir ), pool ); relative_to_dir = std_relative_to_dir.c_str(); } apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool ignore_ancestry = args.getBoolean( name_ignore_ancestry, true ); bool diff_deleted = args.getBoolean( name_diff_deleted, true ); #if defined( PYSVN_HAS_CLIENT_DIFF_PEG2 ) bool ignore_content_type = args.getBoolean( name_ignore_content_type, false ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG3 ) std::string header_encoding( args.getUtf8String( name_header_encoding, empty_string ) ); const char *header_encoding_ptr = APR_LOCALE_CHARSET; if( !header_encoding.empty() ) header_encoding_ptr = header_encoding.c_str(); apr_array_header_t *options = NULL; if( args.hasArg( name_diff_options ) ) { options = arrayOfStringsFromListOfStrings( args.getArg( name_diff_options ), pool ); } else { options = apr_array_make( pool, 0, sizeof( const char * ) ); } #else apr_array_header_t *options = apr_array_make( pool, 0, sizeof( const char * ) ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG5 ) bool show_copies_as_adds = args.getBoolean( name_show_copies_as_adds, false ); bool use_git_diff_format = args.getBoolean( name_use_git_diff_format, false ); #endif #if defined( PYSVN_HAS_CLIENT_DIFF_PEG6 ) bool diff_added = args.getBoolean( name_diff_added, true ); bool ignore_properties = args.getBoolean( name_ignore_properties, false ); bool properties_only = args.getBoolean( name_properties_only, false ); #endif bool is_url = is_svn_url( path ); revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_start, name_revision_start, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_end, name_revision_end, name_url_or_path ); svn_stringbuf_t *stringbuf = NULL; try { std::string norm_tmp_path( svnNormalisedIfPath( tmp_path, pool ) ); std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF6 ) PySvnSvnStream output_stream( pool ); PySvnSvnStream error_stream( pool ); output_stream.open_unique_file( norm_tmp_path ); error_stream.open_unique_file( norm_tmp_path ); #else PySvnAprFile output_file( pool ); PySvnAprFile error_file( pool ); output_file.open_unique_file( norm_tmp_path ); error_file.open_unique_file( norm_tmp_path ); #endif // std::cout << "peg_revision " << peg_revision.kind << " " << peg_revision.value.number << std::endl; // std::cout << "revision_start " << revision_start.kind << " " << revision_start.value.number << std::endl; // std::cout << "revision_end " << revision_end.kind << " " << revision_end.value.number << std::endl; #if defined( PYSVN_HAS_CLIENT_DIFF_PEG6 ) svn_error_t *error = svn_client_diff_peg6 ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, relative_to_dir, depth, ignore_ancestry, !diff_added, !diff_deleted, show_copies_as_adds, ignore_content_type, ignore_properties, properties_only, use_git_diff_format, header_encoding_ptr, output_stream.stream(), error_stream.stream(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF_PEG5 ) svn_error_t *error = svn_client_diff_peg5 ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, relative_to_dir, depth, ignore_ancestry, !diff_deleted, show_copies_as_adds, ignore_content_type, use_git_diff_format, header_encoding_ptr, output_file.file(), error_file.file(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF_PEG4 ) svn_error_t *error = svn_client_diff_peg4 ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, relative_to_dir, depth, ignore_ancestry, !diff_deleted, ignore_content_type, header_encoding_ptr, output_file.file(), error_file.file(), changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF_PEG3 ) svn_error_t *error = svn_client_diff_peg3 ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, recurse, ignore_ancestry, !diff_deleted, ignore_content_type, header_encoding_ptr, output_file.file(), error_file.file(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DIFF_PEG2 ) svn_error_t *error = svn_client_diff_peg2 ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, recurse, ignore_ancestry, !diff_deleted, ignore_content_type, output_file.file(), error_file.file(), m_context, pool ); #else svn_error_t *error = svn_client_diff_peg ( options, norm_path.c_str(), &peg_revision, &revision_start, &revision_end, recurse, ignore_ancestry, !diff_deleted, output_file.file(), error_file.file(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); #if defined( PYSVN_HAS_CLIENT_DIFF6 ) output_stream.readIntoStringBuf( &stringbuf ); #else output_file.readIntoStringBuf( &stringbuf ); #endif } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } if( return_bytes ) { return Py::Bytes( stringbuf->data, (int)stringbuf->len ); } else { return Py::String( stringbuf->data, (int)stringbuf->len, name_utf8 ); } } #endif #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) extern "C" svn_error_t *diff_summarize_c ( const svn_client_diff_summarize_t *diff, void *baton_, apr_pool_t *pool ); class DiffSummarizeBaton { public: DiffSummarizeBaton( PythonAllowThreads *permission, Py::List &diff_list ) : m_permission( permission ) , m_diff_list( diff_list ) {} ~DiffSummarizeBaton() {} svn_client_diff_summarize_func_t callback() { return &diff_summarize_c; } void *baton() { return static_cast< void * >( this ); } static DiffSummarizeBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; DictWrapper *m_wrapper_diff_summary; Py::List &m_diff_list; }; extern "C" svn_error_t *diff_summarize_c ( const svn_client_diff_summarize_t *diff, void *baton_, apr_pool_t *pool ) { DiffSummarizeBaton *baton = DiffSummarizeBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); Py::Dict diff_dict; diff_dict[ *py_name_path ] = Py::String( diff->path, name_utf8 ); diff_dict[ *py_name_summarize_kind ] = toEnumValue( diff->summarize_kind ); diff_dict[ *py_name_prop_changed ] = Py::Int( diff->prop_changed != 0 ); diff_dict[ *py_name_node_kind ] = toEnumValue( diff->node_kind ); baton->m_diff_list.append( baton->m_wrapper_diff_summary->wrapDict( diff_dict ) ); return SVN_NO_ERROR; } Py::Object pysvn_client::cmd_diff_summarize( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path1 }, { false, name_revision1 }, { false, name_url_or_path2 }, { false, name_revision2 }, { false, name_recurse }, { false, name_ignore_ancestry }, #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE2 ) { false, name_depth }, { false, name_changelists }, #endif { false, NULL } }; FunctionArguments args( "diff_summarize", args_desc, a_args, a_kws ); args.check(); std::string path1( args.getUtf8String( name_url_or_path1 ) ); svn_opt_revision_t revision1 = args.getRevision( name_revision1, svn_opt_revision_base ); std::string path2( args.getUtf8String( name_url_or_path2, path1 ) ); svn_opt_revision_t revision2 = args.getRevision( name_revision2, svn_opt_revision_working ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE2 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool ignore_ancestry = args.getBoolean( name_ignore_ancestry, true ); Py::List diff_list; try { std::string norm_path1( svnNormalisedIfPath( path1, pool ) ); std::string norm_path2( svnNormalisedIfPath( path2, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); DiffSummarizeBaton diff_baton( &permission, diff_list ); diff_baton.m_wrapper_diff_summary = &m_wrapper_diff_summary; #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE2 ) svn_error_t *error = svn_client_diff_summarize2 ( norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, depth, ignore_ancestry, changelists, diff_baton.callback(), diff_baton.baton(), m_context, pool ); #else svn_error_t *error = svn_client_diff_summarize ( norm_path1.c_str(), &revision1, norm_path2.c_str(), &revision2, recurse, ignore_ancestry, diff_baton.callback(), diff_baton.baton(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return diff_list; } Py::Object pysvn_client::cmd_diff_summarize_peg( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_peg_revision }, { false, name_revision_start }, { false, name_revision_end }, { false, name_recurse }, { false, name_ignore_ancestry }, #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE_PEG2 ) { false, name_depth }, { false, name_changelists }, #endif { false, NULL } }; FunctionArguments args( "diff_summarize_peg", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_base ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_working ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision_end ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE_PEG2 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool ignore_ancestry = args.getBoolean( name_ignore_ancestry, true ); bool is_url = is_svn_url( path ); revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_start, name_revision_start, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_end, name_revision_end, name_url_or_path ); Py::List diff_list; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); DiffSummarizeBaton diff_baton( &permission, diff_list ); diff_baton.m_wrapper_diff_summary = &m_wrapper_diff_summary; #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE_PEG2 ) svn_error_t *error = svn_client_diff_summarize_peg2 ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, depth, ignore_ancestry, changelists, diff_baton.callback(), diff_baton.baton(), m_context, pool ); #else svn_error_t *error = svn_client_diff_summarize_peg ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, recurse, ignore_ancestry, diff_baton.callback(), diff_baton.baton(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // cannot convert to Unicode as we have no idea of the encoding of the bytes return diff_list; } #endif pysvn-1.9.22/Source/pysvn.hpp000644 000765 000024 00000075531 14443557522 016424 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2016 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #include "Python.h" #include "CXX/Version.hxx" #include "CXX/Objects.hxx" #include "CXX/Extensions.hxx" #include #include "pysvn_svnenv.hpp" #include #include #include extern "C" int pysvn_breakpoint(); //-------------------------------------------------------------------------------- class pysvn_module : public Py::ExtensionModule { public: pysvn_module(); virtual ~pysvn_module(); private:// functions Py::Object new_client( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object new_transaction( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object new_revision( const Py::Tuple &a_args, const Py::Dict &a_kws ); public:// variables Py::ExtensionExceptionType client_error; }; //-------------------------------------------------------------------------------- class PythonAllowThreads; class pysvn_context : public SvnContext { public: pysvn_context( const std::string &config_dir ); virtual ~pysvn_context(); // return true if the callbacks are being used on some thread bool hasPermission(); // give the callbacks permission to run void setPermission( PythonAllowThreads &_permission ); // revoke permission void clearPermission(); void checkForError( Py::ExtensionExceptionType &exception_for_error ); public: // data // // Python class that has implements the callback methods // Py::Object m_pyfn_GetLogin; Py::Object m_pyfn_Notify; #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) Py::Object m_pyfn_Progress; #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) Py::Object m_pyfn_ConflictResolver; #endif Py::Object m_pyfn_Cancel; Py::Object m_pyfn_GetLogMessage; Py::Object m_pyfn_SslServerPrompt; Py::Object m_pyfn_SslServerTrustPrompt; Py::Object m_pyfn_SslClientCertPrompt; Py::Object m_pyfn_SslClientCertPwPrompt; std::string m_default_username; std::string m_default_password; void setLogMessage( const std::string &message ); private: // methods // // this method will be called to retrieve // authentication information // bool contextGetLogin ( const std::string &realm, std::string &username, std::string &password, bool &may_save ); // // this method will be called to notify about // the progress of an ongoing action // #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) void contextNotify2 ( const svn_wc_notify_t *notify, apr_pool_t *pool ); #else void contextNotify ( const char *path, svn_wc_notify_action_t action, svn_node_kind_t kind, const char *mime_type, svn_wc_notify_state_t content_state, svn_wc_notify_state_t prop_state, svn_revnum_t revision ); #endif #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) void contextProgress ( apr_off_t progress, apr_off_t total ); #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) bool contextConflictResolver ( svn_wc_conflict_result_t **result, const svn_wc_conflict_description_t *description, apr_pool_t *pool ); #endif // // this method will be called periodically to allow // the app to cancel long running operations // // @return cancel action? // @retval true cancel // bool contextCancel(); // // this method will be called to retrieve // a log message // bool contextGetLogMessage( std::string & msg ); // // this method is called if there is ssl server // information, that has to be confirmed by the user // // @param data // @return @a SslServerTrustAnswer // bool contextSslServerTrustPrompt ( const svn_auth_ssl_server_cert_info_t &info, const std::string &realm, apr_uint32_t &a_accepted_failures, bool &accept_permanent ); // // this method is called to retrieve client side // information // bool contextSslClientCertPrompt( std::string &certFile, const std::string &realm, bool &may_save ); // // this method is called to retrieve the password // for the certificate // // @param password // bool contextSslClientCertPwPrompt ( std::string & password, const std::string &realm, bool &may_save ); private:// vaiables PythonAllowThreads *m_permission; std::string m_error_message; std::string m_log_message; }; class DictWrapper { public: DictWrapper( Py::Dict result_wrappers, const std::string &wrapper_name ); ~DictWrapper(); Py::Object wrapDict( Py::Dict result ) const; private: const std::string m_wrapper_name; bool m_have_wrapper; Py::Callable m_wrapper; }; class FunctionArguments; class pysvn_client : public Py::PythonExtension { public: pysvn_client( pysvn_module &module, const std::string &config_dir, Py::Dict result_wrappers ); virtual ~pysvn_client(); // override functions from PythonExtension virtual Py::Object getattr( const char *name ); virtual int setattr( const char *name, const Py::Object &value ); static void init_type( void ); // SVN commands Py::Object cmd_add( const Py::Tuple& args, const Py::Dict &kws ); #ifdef PYSVN_HAS_CLIENT_ADD_TO_CHANGELIST Py::Object cmd_add_to_changelist( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_annotate( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE5 ) Py::Object cmd_annotate2( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_cat( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_checkout( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_cleanup( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_checkin( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_copy( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_COPY4 ) Py::Object cmd_copy2( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_diff( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_diff_peg( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_DIFF_SUMMARIZE ) Py::Object cmd_diff_summarize( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_diff_summarize_peg( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_export( const Py::Tuple& args, const Py::Dict &kws ); #ifdef PYSVN_HAS_CLIENT_GET_CHANGELIST Py::Object cmd_get_changelist( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_info( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_INFO ) Py::Object cmd_info2( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_import( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_log( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_LOCK ) Py::Object cmd_lock( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_LIST ) Py::Object cmd_list( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_ls( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_merge( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_merge_peg( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_MERGE_PEG3 ) Py::Object cmd_merge_peg2( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_MERGE_REINTEGRATE ) Py::Object cmd_merge_reintegrate( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_mkdir( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_move( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_MOVE4 ) Py::Object cmd_move2( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_PATCH ) Py::Object cmd_patch( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_PROPSET_LOCAL ) Py::Object cmd_propdel_local( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propset_local( const Py::Tuple& args, const Py::Dict &kws ); Py::Object common_propset_local( FunctionArguments &args, bool is_set ); #endif #if defined( PYSVN_HAS_CLIENT_PROPSET_REMOTE ) Py::Object cmd_propdel_remote( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propset_remote( const Py::Tuple& args, const Py::Dict &kws ); Py::Object common_propset_remote( FunctionArguments &args, bool is_set ); #endif Py::Object cmd_propdel( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propset( const Py::Tuple& args, const Py::Dict &kws ); Py::Object common_propset( FunctionArguments &args, bool is_set ); Py::Object cmd_propget( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_proplist( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_relocate( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_remove( const Py::Tuple& args, const Py::Dict &kws ); #ifdef PYSVN_HAS_CLIENT_REMOVE_FROM_CHANGELISTS Py::Object cmd_remove_from_changelists( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_resolved( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revert( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revpropdel( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revpropset( const Py::Tuple& args, const Py::Dict &kws ); Py::Object common_revpropset( FunctionArguments &args, bool is_set ); Py::Object cmd_revpropget( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revproplist( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_STATUS5 ) Py::Object cmd_status2( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_status( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_switch( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_LOCK ) Py::Object cmd_unlock( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_UPGRADE ) Py::Object cmd_upgrade( const Py::Tuple& args, const Py::Dict &kws ); #endif Py::Object cmd_update( const Py::Tuple& args, const Py::Dict &kws ); #if defined( PYSVN_HAS_CLIENT_VACUUM ) Py::Object cmd_vacuum( const Py::Tuple& args, const Py::Dict &kws ); #endif // SVN commands Py::Object is_url( const Py::Tuple& args, const Py::Dict &kws ); Py::Object get_auth_cache( const Py::Tuple& args, const Py::Dict &kws ); Py::Object set_auth_cache( const Py::Tuple& args, const Py::Dict &kws ); Py::Object get_auto_props( const Py::Tuple& args, const Py::Dict &kws ); Py::Object set_auto_props( const Py::Tuple& args, const Py::Dict &kws ); Py::Object get_interactive( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object set_interactive( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object get_default_username( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object set_default_username( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object get_default_password( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object set_default_password( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object get_store_passwords( const Py::Tuple &a_args, const Py::Dict &a_kws ); Py::Object set_store_passwords( const Py::Tuple &a_args, const Py::Dict &a_kws ); #if defined( PYSVN_HAS_WC_ADM_DIR ) Py::Object is_adm_dir( const Py::Tuple& args, const Py::Dict &kws ); Py::Object get_adm_dir( const Py::Tuple& args, const Py::Dict &kws ); Py::Object set_adm_dir( const Py::Tuple& args, const Py::Dict &kws ); #endif #if defined( PYSVN_HAS_CLIENT_ROOT_URL_FROM_PATH ) Py::Object cmd_root_url_from_path( const Py::Tuple& args, const Py::Dict &kws ); #endif // check that we are not in use on another thread void checkThreadPermission(); private: // helper function that wraps up the logic to throw a client error exception void throw_client_error( SvnException & ); private: Py::Object helper_boolean_auth_set( FunctionArguments &a_args, const char *a_arg_name, const char *a_param_name ); Py::Object helper_boolean_auth_get( FunctionArguments &a_args, const char *a_param_name ); Py::Object helper_string_auth_set( FunctionArguments &a_args, const char *a_arg_name, const char *a_param_name, std::string &ctx_str ); Py::Object helper_string_auth_get( FunctionArguments &a_args, const char *a_param_name ); pysvn_module &m_module; Py::Dict m_result_wrappers; pysvn_context m_context; int m_exception_style; int m_commit_info_style; #if defined( PYSVN_HAS_CLIENT_STATUS_T ) DictWrapper m_wrapper_status2; #endif DictWrapper m_wrapper_status; DictWrapper m_wrapper_entry; DictWrapper m_wrapper_info; DictWrapper m_wrapper_lock; DictWrapper m_wrapper_list; DictWrapper m_wrapper_log; DictWrapper m_wrapper_log_changed_path; DictWrapper m_wrapper_dirent; DictWrapper m_wrapper_wc_info; DictWrapper m_wrapper_diff_summary; DictWrapper m_wrapper_commit_info; }; class pysvn_transaction : public Py::PythonExtension { public: pysvn_transaction( pysvn_module &module, Py::Dict result_wrappers ); virtual ~pysvn_transaction(); void init( const std::string &repos_path, const std::string &transaction_name, bool is_revision ); // override functions from PythonExtension virtual Py::Object getattr( const char *name ); virtual int setattr( const char *name, const Py::Object &value ); static void init_type( void ); // SVN Transaction commands Py::Object cmd_cat( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_changed( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_list( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propdel( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propget( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_proplist( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_propset( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revpropdel( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revpropget( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revproplist( const Py::Tuple& args, const Py::Dict &kws ); Py::Object cmd_revpropset( const Py::Tuple& args, const Py::Dict &kws ); // check that we are not in use on another thread void checkThreadPermission(); private: // helper function that wraps up the logic to throw a client error exception void throw_client_error( SvnException & ); private: pysvn_module &m_module; Py::Dict m_result_wrappers; SvnTransaction m_transaction; int m_exception_style; }; class pysvn_revision : public Py::PythonExtension { public: pysvn_revision( svn_opt_revision_kind kind, double date=0.0, int revnum=0 ); virtual ~pysvn_revision(); virtual Py::Object getattr( const char *name ); virtual int setattr( const char *name, const Py::Object &value ); virtual Py::Object repr(); const svn_opt_revision_t &getSvnRevision() const; static void init_type(void); private: pysvn_revision(); // not defined svn_opt_revision_t m_svn_revision; }; // help functions to check the arguments pass and throw AttributeError struct argument_description { bool m_required; // true if this argument must be present const char *m_arg_name; // the name of this arg to lookup in the keywords dictionary }; class FunctionArguments { public: FunctionArguments ( const char *function_name, const argument_description *arg_info, const Py::Tuple &args, const Py::Dict &kws ); ~FunctionArguments(); void check(); bool hasArg( const char *arg_name ); bool hasArgNotNone( const char *arg_name ); Py::Object getArg( const char *arg_name ); bool getBoolean( const char *name ); bool getBoolean( const char *name, bool default_value ); int getInteger( const char *name ); int getInteger( const char *name, int default_value ); long getLong( const char *name ); long getLong( const char *name, long default_value ); std::string getUtf8String( const char *name ); std::string getUtf8String( const char *name, const std::string &default_value ); std::string getBytes( const char *name, const std::string &default_value ); std::string getBytes( const char *name ); svn_opt_revision_t getRevision( const char *name ); svn_opt_revision_t getRevision( const char *name, svn_opt_revision_kind default_value ); svn_opt_revision_t getRevision( const char *name, svn_opt_revision_t default_value ); #if defined( PYSVN_HAS_SVN__DEPTH_PARAMETER ) svn_depth_t getDepth( const char *depth_name, const char *recursive_name, svn_depth_t default_value, svn_depth_t recursive_true_value, svn_depth_t recursive_false_value ); svn_depth_t getDepth( const char *depth_name, svn_depth_t default_value ); svn_depth_t getDepth( const char *depth_name ); #endif #if defined( PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T ) svn_wc_conflict_choice_t getWcConflictChoice( const char *choice_name, svn_wc_conflict_choice_t default_value ); svn_wc_conflict_choice_t getWcConflictChoice( const char *choice_name ); #endif public: const std::string m_function_name; private: const argument_description *m_arg_desc; const Py::Tuple &m_args; const Py::Dict &m_kws; Py::Dict m_checked_args; Py::Tuple::size_type m_min_args; Py::Tuple::size_type m_max_args; }; //------------------------------------------------------------ #if defined( PYSVN_HAS_COMMIT_CALLBACK2_T ) extern "C" svn_error_t *CommitInfoResult_callback( const svn_commit_info_t *commit_info, void *baton, apr_pool_t *pool ); class CommitInfoResult { friend svn_error_t *CommitInfoResult_callback( const svn_commit_info_t *commit_info, void *baton, apr_pool_t *pool ); public: CommitInfoResult( SvnPool &pool ); ~CommitInfoResult(); // needed to call svn API svn_commit_callback2_t callback() { return &CommitInfoResult_callback; } void *baton() { return static_cast< void * >( this ); } // convert to python int count(); const svn_commit_info_t *result( int index ); private: static CommitInfoResult *castBaton( void *baton_ ) { return static_cast( baton_ ); } apr_array_header_t *m_all_results; SvnPool &m_pool; }; #endif //------------------------------------------------------------ template class EnumString { public: EnumString(); ~EnumString() {} const std::string &toTypeName( T ) { return m_type_name; } const std::string &toString( T value ) { static std::string not_found( "-unknown-" ); EXPLICIT_TYPENAME std::map::iterator it = m_enum_to_string.find( value ); if( it != m_enum_to_string.end() ) return (*it).second; not_found = "-unknown ("; int u1000 = value/1000 % 10; int u100 = value/100 % 10; int u10 = value/10 % 10; int u1 = value % 10; not_found += char( '0' + u1000 ); not_found += char( '0' + u100 ); not_found += char( '0' + u10 ); not_found += char( '0' + u1 ); not_found += ")-"; return not_found; } bool toEnum( const std::string &string, T &value ) { EXPLICIT_TYPENAME std::map::iterator it = m_string_to_enum.find( string ); if( it != m_string_to_enum.end() ) { value = (*it).second; return true; } return false; } EXPLICIT_TYPENAME std::map::iterator begin() { return m_string_to_enum.begin(); } EXPLICIT_TYPENAME std::map::iterator end() { return m_string_to_enum.end(); } private: void add( T value, std::string string ) { m_string_to_enum[string] = value; m_enum_to_string[value] = string; } std::string m_type_name; std::map m_string_to_enum; std::map m_enum_to_string; }; template const std::string &toTypeName( T value ) { static EnumString< T > enum_map; return enum_map.toTypeName( value ); } template const std::string &toString( T value ) { static EnumString< T > enum_map; return enum_map.toString( value ); } template bool toEnum( const std::string &string, T &value ) { static EnumString< T > enum_map; return enum_map.toEnum( string, value ); } template Py::List memberList( T value ) { static EnumString< T > enum_map; Py::List members; EXPLICIT_TYPENAME std::map::iterator it = enum_map.begin(); while( it != enum_map.end() ) { members.append( Py::String( (*it).first ) ); ++it; } return members; } //------------------------------------------------------------ template class pysvn_enum_value : public Py::PythonExtension< EXPLICIT_CLASS pysvn_enum_value > { public: pysvn_enum_value( T _value) : Py::PythonExtension() , m_value( _value ) { } virtual ~pysvn_enum_value() { } virtual int compare( const Py::Object &other ) { if( pysvn_enum_value::check( other ) ) { pysvn_enum_value *other_value = static_cast( other.ptr() ); if( m_value == other_value->m_value ) return 0; if( m_value > other_value->m_value ) return 1; else return -1; } else { std::string msg( "expecting " ); msg += toTypeName( m_value ); msg += " object for compare "; throw Py::AttributeError( msg ); } } virtual Py::Object rich_compare( const Py::Object &other, int op ) { if( pysvn_enum_value::check( other ) ) { pysvn_enum_value *other_value = static_cast( other.ptr() ); switch( op ) { case Py_EQ: return Py::Boolean( m_value == other_value->m_value ); case Py_NE: return Py::Boolean( m_value != other_value->m_value ); case Py_LT: return Py::Boolean( m_value < other_value->m_value ); case Py_LE: return Py::Boolean( m_value <= other_value->m_value ); case Py_GT: return Py::Boolean( m_value > other_value->m_value ); case Py_GE: return Py::Boolean( m_value >= other_value->m_value ); default: throw Py::RuntimeError( "rich_compare bad op" ); } } else { std::string msg( "expecting " ); msg += toTypeName( m_value ); msg += " object for rich compare "; throw Py::NotImplementedError( msg ); } } virtual Py::Object repr() { std::string s("<"); s += toTypeName( m_value ); s += "."; s += toString( m_value ); s += ">"; return Py::String( s ); } virtual Py::Object str() { return Py::String( toString( m_value ) ); } // need a hash so that the enums can go into a map virtual long hash() { static bool hash_extra_init = false; static long hash_extra = 0; if( !hash_extra_init ) { Py::String type_name( toTypeName( m_value ) ); hash_extra = type_name.hashValue(); hash_extra_init = true; } // use the m_value plus the hash of the type name return long( m_value ) + hash_extra; } static void init_type(void); public: T m_value; }; //------------------------------------------------------------ template class pysvn_enum : public Py::PythonExtension< EXPLICIT_CLASS pysvn_enum > { public: pysvn_enum() : Py::PythonExtension() { } virtual ~pysvn_enum() { } virtual Py::Object getattr( const char *_name ) { std::string name( _name ); T value; if( name == "__methods__" ) { return Py::List(); } if( name == "__members__" ) { return memberList( static_cast( 0 ) ); } if( toEnum( name, value ) ) { return Py::asObject( new pysvn_enum_value( value ) ); } return this->getattr_methods( _name ); } static void init_type(void); }; template Py::Object toEnumValue( const T &value ) { return Py::asObject( new pysvn_enum_value( value ) ); } // true if path exists and is a directory extern bool is_path_dir( const std::string &path ); // true if the path_or_url is a svn url extern bool is_svn_url( const std::string &path_or_url ); // convert a path to what SVN likes only if its not a URL extern std::string svnNormalisedIfPath( const std::string &unnormalised, SvnPool &pool ); // convert a URL to what SVN likes extern std::string svnNormalisedUrl( const std::string &unnormalised, SvnPool &pool ); // convert a path to what SVN likes extern std::string svnNormalisedPath( const std::string &unnormalised, SvnPool &pool ); // convert a path to what the native OS likes extern std::string osNormalisedPath( const std::string &unnormalised, SvnPool &pool ); // need a type to convert from apr_time_t to signed_int64 to double #if defined(_MSC_VER) typedef signed __int64 signed_int64; #else typedef signed long long signed_int64; #endif //-------------------------------------------------------------------------------- // // PythonAllowThreads provides a exception safe // wrapper for the C idiom: // // Py_BEGIN_ALLOW_THREADS // ...Do some blocking I/O operation... // Py_END_ALLOW_THREADS // // IN C++ use PythonAllowThreads in main code: //{ // PythonAllowThreads main_permission; // ...Do some blocking I/O operation that may throw //} // allow d'tor grabs the lock // // In C++ use PythonDisallowThreads in callback code: //{ // PythonDisallowThreads permission( main_permission ); // ... Python operations that may throw //} // allow d'tor to release the lock // //-------------------------------------------------------------------------------- class PythonAllowThreads { public: // calls allowOtherThreads() PythonAllowThreads( pysvn_context &_context ); // calls allowThisThread() if necessary ~PythonAllowThreads(); void allowOtherThreads(); void allowThisThread(); private: pysvn_context &m_callbacks; PyThreadState *m_save; }; class PythonDisallowThreads { public: // calls allowThisThread() PythonDisallowThreads( PythonAllowThreads *_permission ); // calls allowOtherThreads() if necessary ~PythonDisallowThreads(); private: PythonAllowThreads *m_permission; }; //-------------------------------------------------------------------------------- extern Py::Object utf8_string_or_none( const char *str ); extern Py::Object utf8_string_or_none( const std::string &str ); extern Py::Object path_string_or_none( const char *str, SvnPool &pool ); extern Py::Object path_string_or_none( const std::string &str, SvnPool &pool ); extern apr_time_t convertStringToTime( const std::string &text, apr_time_t now, SvnPool &pool ); extern Py::Object propsToObject( apr_hash_t *props, SvnPool &pool ); #if defined( PYSVN_HAS_CLIENT_PROPGET5 ) extern Py::Object inheritedPropsToObject( apr_array_header_t *inherited_props, SvnPool &pool ); #endif extern Py::Object revnumListToObject( apr_array_header_t *revs, SvnPool &pool ); extern void proplistToObject( Py::List &py_path_propmap_list, apr_array_header_t *props, SvnPool &pool ); extern Py::Bytes asUtf8Bytes( Py::Object obj ); extern apr_array_header_t *targetsFromStringOrList( Py::Object arg, SvnPool &pool ); extern Py::List toListOfStrings( Py::Object obj ); extern apr_array_header_t *arrayOfStringsFromListOfStrings( Py::Object arg, SvnPool &pool ); extern apr_hash_t *hashOfStringsFromDictOfStrings( Py::Object arg, SvnPool &pool ); extern Py::Object direntsToObject( apr_hash_t *props, SvnPool &pool ); Py::Object toObject( apr_time_t t ); Py::Object toObject( pysvn_commit_info_t *commit_info, int commit_style ); #if defined( PYSVN_HAS_SVN_COMMIT_INFO_T ) Py::Object toObject( CommitInfoResult &commit_info, const DictWrapper &wrapper_commit_info, int commit_style ); #endif #if defined( PYSVN_HAS_CLIENT_STATUS_T ) extern Py::Object toObject ( Py::String path, svn_client_status_t &svn_status, SvnPool &pool, const DictWrapper &wrapper_status2, const DictWrapper &wrapper_lock ); #endif extern Py::Object toObject ( Py::String path, pysvn_wc_status_t &svn_status, SvnPool &pool, const DictWrapper &wrapper_status, const DictWrapper &wrapper_entry, const DictWrapper &wrapper_lock ); extern Py::Object toObject ( const svn_wc_entry_t &svn_entry, SvnPool &pool, const DictWrapper &wrapper_entry ); #if defined( PYSVN_HAS_CLIENT_INFO ) extern Py::Object toObject ( const svn_info_t &info, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ); #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) extern Py::Object toObject ( const svn_client_info2_t &info, SvnPool &pool, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ); #endif #if defined( PYSVN_HAS_CLIENT_LOCK ) extern Py::Object toObject ( const svn_lock_t &lock, const DictWrapper &wrapper_lock ); #endif extern void revisionKindCompatibleCheck ( bool is_url, const svn_opt_revision_t &revision, const char *revision_name, const char *url_or_path_name ); extern Py::Object toFilesize ( svn_filesize_t filesize ); //-------------------------------------------------------------------------------- pysvn-1.9.22/Source/pysvn_path.cpp000644 000765 000024 00000005102 12136240632 017402 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include #include "svn_path.h" #include #include // SVN lives in a world of its own for URL and path syntax // here are routines to convert from OS conventions to SVN's // is this a path of a url svn? bool is_svn_url( const std::string &path_or_url ) { return svn_path_is_url( path_or_url.c_str() ) != 0; } // convert a path or URL to what SVN likes std::string svnNormalisedIfPath( const std::string &unnormalised, SvnPool &pool ) { if( is_svn_url( unnormalised ) ) { return svnNormalisedUrl( unnormalised, pool ); } else { return svnNormalisedPath( unnormalised, pool ); } } #if defined(PYSVN_HAS_SVN_1_7) std::string svnNormalisedUrl( const std::string &unnormalised, SvnPool &pool ) { const char *normalised_path = svn_uri_canonicalize( unnormalised.c_str(), pool ); return std::string( normalised_path ); } std::string svnNormalisedPath( const std::string &unnormalised, SvnPool &pool ) { const char *normalised_path = svn_dirent_internal_style( unnormalised.c_str(), pool ); return std::string( normalised_path ); } // convert a path to what the native OS likes std::string osNormalisedPath( const std::string &unnormalised, SvnPool &pool ) { const char *local_path = svn_dirent_local_style( unnormalised.c_str(), pool ); return std::string( local_path ); } #else std::string svnNormalisedUrl( const std::string &unnormalised, SvnPool &pool ) { const char *normalised_path = svn_path_canonicalize( unnormalised.c_str(), pool ); return std::string( normalised_path ); } std::string svnNormalisedPath( const std::string &unnormalised, SvnPool &pool ) { const char *normalised_path = svn_path_internal_style( unnormalised.c_str(), pool ); return std::string( normalised_path ); } // convert a path to what the native OS likes std::string osNormalisedPath( const std::string &unnormalised, SvnPool &pool ) { const char *local_path = svn_path_local_style( unnormalised.c_str(), pool ); return std::string( local_path ); } #endif pysvn-1.9.22/Source/generate_svn_error_codes/000755 000765 000024 00000000000 14527655012 021563 5ustar00barrystaff000000 000000 pysvn-1.9.22/Source/pysvn_svnenv.hpp000644 000765 000024 00000034417 13565541351 020016 0ustar00barrystaff000000 000000 // // ==================================================================== // (c) 2003-2019 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // #ifndef __PYSVN_SVNENV__ #define __PYSVN_SVNENV__ #include "CXX/Objects.hxx" #if !defined( PYCXX_MAKEVERSION ) || PYCXX_VERSION < PYCXX_MAKEVERSION( 6, 2, 4 ) #error PyCXX version 6.2.4 or later required #endif #include #include #include #include #include #include #include #include #include #if !defined( SVN_VER_MAJOR ) #error "SVN_VER_MAJOR not defined" #endif #if !defined( SVN_VER_MINOR ) #error "SVN_VER_MINOR not defined" #endif // SVN 1.1 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 1) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_CLIENT_ADD2 #define PYSVN_HAS_CLIENT_DIFF_PEG #define PYSVN_HAS_CLIENT_EXPORT2 #define PYSVN_HAS_CLIENT_MERGE_PEG #define PYSVN_HAS_CLIENT_VERSION #endif // SVN 1.2 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 2) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_CLIENT_ANNOTATE2 #define PYSVN_HAS_CLIENT_CAT2 #define PYSVN_HAS_CLIENT_CHECKOUT2 #define PYSVN_HAS_CLIENT_COMMIT2 #define PYSVN_HAS_CLIENT_DIFF_PEG2 #define PYSVN_HAS_CLIENT_DIFF2 #define PYSVN_HAS_CLIENT_EXPORT3 #define PYSVN_HAS_CLIENT_INFO #define PYSVN_HAS_CLIENT_LOCK #define PYSVN_HAS_CLIENT_LOG2 #define PYSVN_HAS_CLIENT_LS2 #define PYSVN_HAS_CLIENT_MOVE2 #define PYSVN_HAS_CLIENT_PROPGET2 #define PYSVN_HAS_CLIENT_PROPLIST2 #define PYSVN_HAS_CLIENT_PROPSET2 #define PYSVN_HAS_CLIENT_STATUS2 #define PYSVN_HAS_CLIENT_UPDATE2 #define PYSVN_HAS_CONTEXT_NOTIFY2 #define PYSVN_HAS_WC_ADM_PROBE_OPEN3 #endif // SVN 1.3 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 3) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_CLIENT_COMMIT_ITEM2_T #define PYSVN_HAS_SVN_COMMIT_INFO_T #define PYSVN_HAS_CONTEXT_LOG_MSG2 #define PYSVN_HAS_CONTEXT_PROGRESS #define PYSVN_HAS_WC_ADM_DIR #define PYSVN_HAS_CLIENT_ADD3 #define PYSVN_HAS_CLIENT_COMMIT3 #define PYSVN_HAS_CLIENT_COPY2 #define PYSVN_HAS_CLIENT_DELETE2 #define PYSVN_HAS_CLIENT_DIFF_PEG3 #define PYSVN_HAS_CLIENT_DIFF3 #define PYSVN_HAS_CLIENT_IMPORT2 #define PYSVN_HAS_CLIENT_LS3 #define PYSVN_HAS_CLIENT_MKDIR2 #define PYSVN_HAS_CLIENT_MOVE3 #endif // SVN 1.4 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 4) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_CLIENT_ANNOTATE3 #define PYSVN_HAS_CLIENT_COPY3 #define PYSVN_HAS_CLIENT_DIFF_SUMMARIZE #define PYSVN_HAS_CLIENT_LIST #define PYSVN_HAS_CLIENT_LOG3 #define PYSVN_HAS_CLIENT_MERGE2 #define PYSVN_HAS_CLIENT_MERGE_PEG2 #define PYSVN_HAS_CLIENT_MOVE4 #define PYSVN_HAS_DIFF_FILE_IGNORE_SPACE #define PYSVN_HAS_SVN_AUTH_PROVIDERS #define PYSVN_HAS_IO_OPEN_UNIQUE_FILE2 #endif // SVN 1.5 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 5) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN__DEPTH_PARAMETER #define PYSVN_HAS_CLIENT_ADD4 #define PYSVN_HAS_CLIENT_ADD_TO_CHANGELIST #define PYSVN_HAS_SVN_CLIENT_BLAME_RECEIVER2_T QQQ #define PYSVN_HAS_CLIENT_ANNOTATE4 #define PYSVN_HAS_CLIENT_CHECKOUT3 #define PYSVN_HAS_CLIENT_COMMIT4 #define PYSVN_HAS_CLIENT_COPY4 #define PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC #define PYSVN_HAS_SVN_CLIENT_CTX_T__LOG_MSG_FUNC3 QQQ #define PYSVN_HAS_SVN_CLIENT_CTX_T__MIMETYPES_MAP QQQ #define PYSVN_HAS_CLIENT_DELETE3 #define PYSVN_HAS_CLIENT_DIFF4 #define PYSVN_HAS_CLIENT_DIFF_PEG4 #define PYSVN_HAS_CLIENT_DIFF_SUMMARIZE2 #define PYSVN_HAS_CLIENT_DIFF_SUMMARIZE_PEG2 #define PYSVN_HAS_CLIENT_EXPORT4 #define PYSVN_HAS_CLIENT_GET_CHANGELIST #define PYSVN_HAS_CLIENT_GET_CHANGELIST_STREAMY QQQ #define PYSVN_HAS_SVN_CLIENT_GET_COMMIT_LOG3_T QQQ #define PYSVN_HAS_CLIENT_IMPORT3 #define PYSVN_HAS_CLIENT_INFO2 #define PYSVN_HAS_CLIENT_LIST2 #define PYSVN_HAS_CLIENT_LOG4 #define PYSVN_HAS_CLIENT_MERGE3 #define PYSVN_HAS_CLIENT_MERGE_REINTEGRATE #define PYSVN_HAS_CLIENT_MERGEINFO_GET_AVAILABLE QQQ #define PYSVN_HAS_CLIENT_MERGEINFO_GET_MERGED QQQ #define PYSVN_HAS_CLIENT_MERGE_PEG3 QQQ #define PYSVN_HAS_CLIENT_MKDIR3 #define PYSVN_HAS_CLIENT_MOVE5 #define PYSVN_HAS_CLIENT_PROPGET3 #define PYSVN_HAS_CLIENT_PROPLIST3 #define PYSVN_HAS_CLIENT_PROPSET3 #define PYSVN_HAS_CLIENT_REMOVE_FROM_CHANGELISTS #define PYSVN_HAS_CLIENT_RESOLVE #define PYSVN_HAS_CLIENT_REVERT2 #define PYSVN_HAS_CLIENT_ROOT_URL_FROM_PATH #define PYSVN_HAS_CLIENT_STATUS3 #define PYSVN_HAS_CLIENT_SUGGEST_MERGE_SOURCES QQQ #define PYSVN_HAS_CLIENT_SWITCH2 #define PYSVN_HAS_CLIENT_UPDATE3 #define PYSVN_HAS_SVN_INFO_T__CHANGELIST #define PYSVN_HAS_SVN_INFO_T__SIZES #define PYSVN_HAS_SVN_WC_NOTIFY_ACTION_T__1_5 QQQ #define PYSVN_HAS_SVN_WC_CONFLICT_CHOICE_T #endif // SVn 1.6 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 6) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_6 #define PYSVN_HAS_CLIENT_COPY5 #define PYSVN_HAS_IO_OPEN_UNIQUE_FILE3 #define PYSVN_HAS_CLIENT_LOG5 #define PYSVN_HAS_CLIENT_REVPROP_SET2 1 #define PYSVN_HAS_CLIENT_STATUS4 #define PYSVN_HAS_AUTH_GET_SIMPLE_PROVIDER2 #define PYSVN_HAS_AUTH_GET_SSL_CLIENT_CERT_PW_FILE_PROVIDER2 #define PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC_1_6 #define PYSVN_HAS_SVN_WC_OPERATION_T #define PYSVN_HAS_SVN_WC_CONFLICT_RESULT_T__SAVE_MERGED #define PYSVN_HAS_SVN_AUTH_GET_PLATFORM_SPECIFIC_CLIENT_PROVIDERS #endif // SVN 1.7 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 7) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_7 #define PYSVN_HAS_COMMIT_CALLBACK2_T qqq #define PYSNV_HAS_REPOS_OPEN2 1 #define PYSNV_HAS_IO_REMOVE_FILE2 1 #define PYSVN_HAS_CLIENT_ANNOTATE5 1 #define PYSVN_HAS_CLIENT_COMMIT5 1 #define PYSVN_HAS_CLIENT_COPY6 1 #define PYSVN_HAS_CLIENT_DELETE4 1 #define PYSVN_HAS_CLIENT_DIFF5 1 #define PYSVN_HAS_CLIENT_DIFF_PEG5 1 #define PYSVN_HAS_CLIENT_EXPORT5 QQQ #define PYSVN_HAS_CLIENT_GET_WC_ROOT QQQ #define PYSVN_HAS_CLIENT_IMPORT4 QQQ #define PYSVN_HAS_CLIENT_INFO2_T QQQ #define PYSVN_HAS_CLIENT_INFO3 QQQ #define PYSVN_HAS_CLIENT_INFO_RECEIVER2_T QQQ #define PYSVN_HAS_CLIENT_MERGE4 QQQ #define PYSVN_HAS_CLIENT_MERGEINFO_LOG QQQ #define PYSVN_HAS_CLIENT_MERGE_PEG4 1 #define PYSVN_HAS_CLIENT_MIN_MAX_REVISIONS QQQ #define PYSVN_HAS_CLIENT_MKDIR4 1 #define PYSVN_HAS_CLIENT_MOVE6 1 #define PYSVN_HAS_CLIENT_PATCH QQQ #define PYSVN_HAS_CLIENT_PATCH_FUNC_T QQQ #define PYSVN_HAS_CLIENT_PROPGET4 QQQ #define PYSVN_HAS_CLIENT_PROPSET_LOCAL 1 #define PYSVN_HAS_CLIENT_PROPSET_REMOTE 1 #define PYSVN_HAS_CLIENT_RELOCATE2 QQQ #define PYSVN_HAS_CLIENT_STATUS5 1 #define PYSVN_HAS_CLIENT_STATUS_T 1 #define PYSVN_HAS_CLIENT_SWITCH3 1 #define PYSVN_HAS_CLIENT_UPDATE4 QQQ #define PYSVN_HAS_CLIENT_UPGRADE QQQ #define PYSVN_HAS_CLIENT_URL_FROM_PATH2 QQQ #define PYSVN_HAS_CLIENT_UUID_FROM_PATH2 QQQ #define PYSVN_HAS_FS_CHANGE_REV_PROP2 QQQ #endif // SVN 1.8 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 8) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_8 #define PYSVN_HAS_CLIENT_ADD5 1 #define PYSVN_HAS_CLIENT_COMMIT6 1 #define PYSVN_HAS_CLIENT_CLEANUP 1 #define PYSVN_HAS_CLIENT_CREATE_CONTEXT2 1 #define PYSVN_HAS_CLIENT_DIFF6 QQQ #define PYSVN_HAS_CLIENT_DIFF_PEG6 QQQ #define PYSVN_HAS_CLIENT_GET_MERGING_SUMMARY QQQ #define PYSVN_HAS_CLIENT_GET_REPOS_ROOT 1 #define PYSVN_HAS_CLIENT_IMPORT5 QQQ #define PYSVN_HAS_CLIENT_LIST3 1 #define PYSVN_HAS_CLIENT_MERGE5 QQQ #define PYSVN_HAS_CLIENT_MERGEINFO_LOG2 QQQ #define PYSVN_HAS_CLIENT_MERGE_PEG5 QQQ #define PYSVN_HAS_CLIENT_MOVE7 1 #define PYSVN_HAS_CLIENT_PROPGET5 1 #define PYSVN_HAS_CLIENT_PROPLIST4 QQQ #endif // SVN 1.9 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 9) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_9 #define PYSVN_HAS_STREAM_READ_FULL 1 #define PYSVN_HAS_CLIENT_CAT3 1 #define PYSVN_HAS_CLIENT_CLEANUP2 1 #define PYSVN_HAS_CLIENT_COPY7 1 #define PYSVN_HAS_CLIENT_INFO4 1 #define PYSVN_HAS_CLIENT_REVERT3 1 #define PYSVN_HAS_CLIENT_STATUS6 1 #define PYSVN_HAS_CLIENT_VACUUM 1 #define PYSVN_HAS_REPOS_OPEN3 1 #endif // SVN 1.10 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 10) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_10 #define PYSVN_HAS_CLIENT_LIST4 1 // Need to support svn_client_conflict_option_id_t #define PYSVN_HAS_CLIENT_conflict_option_get_moved_to_repos_relpath_candidates 1 #define PYSVN_HAS_CLIENT_conflict_option_set_moved_to_repos_relpath 1 #define PYSVN_HAS_CLIENT_conflict_option_get_moved_to_repos_abspath_candidates 1 #define PYSVN_HAS_CLIENT_conflict_option_set_moved_to_repos_abspath 1 #endif // SVN 1.11 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 11) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_11 #define PYSVN_HAS_CLIENT_DIFF7 1 #define PYSVN_HAS_CLIENT_REVERT4 1 // Need to support svn_client_conflict_option_id_t #define PYSVN_HAS_CLIENT_conflict_option_get_moved_to_repos_relpath_candidates2 1 #define PYSVN_HAS_CLIENT_conflict_option_set_moved_to_repos_relpath2 1 #define PYSVN_HAS_CLIENT_conflict_option_get_moved_to_repos_abspath_candidates2 1 #define PYSVN_HAS_CLIENT_conflict_option_set_moved_to_repos_abspath2 1 #endif // SVN 1.12 or later #if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 12) || SVN_VER_MAJOR > 1 #define PYSVN_HAS_SVN_1_12 #define PYSVN_HAS_CLIENT_ANNOTATE6 1 #endif #if defined( PYSVN_HAS_CLIENT_STATUS3 ) typedef svn_wc_status2_t pysvn_wc_status_t; #elif defined( PYSVN_HAS_CLIENT_STATUS2 ) typedef svn_wc_status2_t pysvn_wc_status_t; #else typedef svn_wc_status_t pysvn_wc_status_t; #endif #if defined( PYSVN_HAS_SVN_COMMIT_INFO_T ) typedef svn_commit_info_t pysvn_commit_info_t; #else typedef svn_client_commit_info_t pysvn_commit_info_t; #endif class SvnPool; class SvnContext; class SvnTransaction; class SvnException { public: SvnException( svn_error_t *error ); SvnException( const SvnException &other ); virtual ~SvnException(); // access methods Py::String &message(); Py::Object &pythonExceptionArg( int style ); apr_status_t code(); private: int m_code; Py::String m_message; Py::Object m_exception_arg; private: SvnException(); SvnException &operator=( const SvnException & ); }; class SvnPool { public: SvnPool( SvnContext &ctx ); SvnPool( SvnTransaction &txn ); ~SvnPool(); operator apr_pool_t *() const; private: apr_pool_t *m_pool; }; class SvnContext { public: SvnContext( const std::string &config_dir="" ); virtual ~SvnContext(); operator svn_client_ctx_t *(); svn_client_ctx_t *ctx(); static SvnContext *castBaton( void *baton_ ) { return static_cast( baton_ ); } // only use this pool for data that has a life time // that matches the life time of the context apr_pool_t *getContextPool(); // // this method will be called to retrieve // authentication information // // WORKAROUND FOR apr_xlate PROBLEM: // STRINGS ALREADY HAVE TO BE UTF8!!! // // @retval true continue // void installGetLogin( bool install ); virtual bool contextGetLogin ( const std::string &realm, std::string &username, std::string &password, bool &may_save ) = 0; // // this method will be called to notify about // the progress of an ongoing action // void installNotify( bool install ); #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) virtual void contextNotify2 ( const svn_wc_notify_t *notify, apr_pool_t *pool ) = 0; #else virtual void contextNotify ( const char *path, svn_wc_notify_action_t action, svn_node_kind_t kind, const char *mime_type, svn_wc_notify_state_t content_state, svn_wc_notify_state_t prop_state, svn_revnum_t revision ) = 0; #endif #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) void installProgress( bool install ); virtual void contextProgress ( apr_off_t progress, apr_off_t total ) = 0; #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) void installConflictResolver( bool install ); virtual bool contextConflictResolver ( svn_wc_conflict_result_t **result, const svn_wc_conflict_description_t *description, apr_pool_t *pool ) = 0; #endif // // this method will be called periodically to allow // the app to cancel long running operations // // @return cancel action? // @retval true cancel // void installCancel( bool install ); virtual bool contextCancel ( ) = 0; // // this method will be called to retrieve // a log message // virtual bool contextGetLogMessage ( std::string &msg ) = 0; // // this method is called if there is ssl server // information, that has to be confirmed by the user // // @param data // @return @a SslServerTrustAnswer // virtual bool contextSslServerTrustPrompt ( const svn_auth_ssl_server_cert_info_t &info, const std::string &relam, apr_uint32_t &acceptedFailures, bool &accept_permanent ) = 0; // // this method is called to retrieve client side // information // virtual bool contextSslClientCertPrompt ( std::string &cert_file, const std::string &realm, bool &may_save ) = 0; // // this method is called to retrieve the password // for the certificate // // @param password // virtual bool contextSslClientCertPwPrompt ( std::string &password, const std::string &realm, bool &may_save ) = 0; private: apr_pool_t *m_pool; svn_client_ctx_t *m_context; const char *m_config_dir; }; class SvnTransaction { public: SvnTransaction(); ~SvnTransaction(); svn_error_t *init( const std::string &repos_path, const std::string &transaction, bool is_revision ); operator svn_fs_txn_t *(); svn_fs_txn_t *transaction(); operator svn_fs_t *(); operator svn_repos_t *(); svn_revnum_t revision(); bool is_revision() const { return m_txn == NULL; }; svn_error_t *root( svn_fs_root_t **root, apr_pool_t *pool ); private: apr_pool_t *m_pool; svn_repos_t *m_repos; svn_fs_t *m_fs; svn_fs_txn_t *m_txn; char *m_txn_name; svn_revnum_t m_rev_id; }; #endif // __PYSVN_SVNENV__ pysvn-1.9.22/Source/pysvn_callbacks.cpp000644 000765 000024 00000043370 13331260703 020375 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_callbacks.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_static_strings.hpp" #if defined( PYSVN_TRACE_CALLBACK ) #define TRACE_CALLBACK( name ) do { std::cerr << "Debug: Callback " << #name << std::endl; } while( false ) #else #define TRACE_CALLBACK( name ) do { } while( false ) #endif static const char *g_utf_8 = "utf-8"; static bool get_string( Py::Object &fn, Py::Tuple &args, std::string &_msg ); pysvn_context::pysvn_context( const std::string &config_dir ) : SvnContext( config_dir ) , m_pyfn_GetLogin() , m_pyfn_Notify() #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) , m_pyfn_Progress() #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) , m_pyfn_ConflictResolver() #endif , m_pyfn_Cancel() , m_pyfn_GetLogMessage() , m_pyfn_SslServerPrompt() , m_pyfn_SslServerTrustPrompt() , m_pyfn_SslClientCertPrompt() , m_pyfn_SslClientCertPwPrompt() , m_permission( NULL ) , m_error_message() , m_log_message() { } pysvn_context::~pysvn_context() { } bool pysvn_context::hasPermission() { return m_permission != NULL; } void pysvn_context::setPermission( PythonAllowThreads &_permission ) { assert( m_permission == NULL ); m_permission = &_permission; m_error_message = ""; } void pysvn_context::clearPermission() { m_permission = NULL; } void pysvn_context::checkForError( Py::ExtensionExceptionType &exception_for_error ) { // see if any errors occurred in the callbacks if( !m_error_message.empty() ) { throw Py::BaseException( exception_for_error, m_error_message ); } } // // this method will be called to retrieve // authentication information // // WORKAROUND FOR apr_xlate PROBLEM: // STRINGS ALREADY HAVE TO BE UTF8!!! // // @retval true continue // bool pysvn_context::contextGetLogin ( const std::string & _realm, std::string & _username, std::string & _password, bool &_may_save ) { TRACE_CALLBACK( contextGetLogin ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_GetLogin.isCallable() ) { m_error_message = "callback_get_login required"; return false; } Py::Callable callback( m_pyfn_GetLogin ); Py::Tuple args( 3 ); args[0] = Py::String( _realm ); args[1] = Py::String( _username ); args[2] = Py::Int( (long)_may_save ); // bool, username, password Py::Tuple results; Py::Int retcode; Py::String username; Py::String password; Py::Int may_save_out; try { results = callback.apply( args ); retcode = results[0]; username = results[1]; password = results[2]; may_save_out = results[3]; // true returned if( long( retcode ) != 0 ) { // copy out the answers _username = username.as_std_string( g_utf_8 ); _password = password.as_std_string( g_utf_8 ); _may_save = long( may_save_out ) != 0; return true; } } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_get_login"; return false; } return false; } #if defined( PYSVN_HAS_CONTEXT_PROGRESS ) void pysvn_context::contextProgress ( apr_off_t progress, apr_off_t total ) { TRACE_CALLBACK( contextProgress ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_Progress.isCallable() ) return; Py::Callable callback( m_pyfn_Progress ); Py::Tuple args( 2 ); // on some platforms apr_off_t is int64 args[0] = Py::Int( static_cast( progress ) ); args[1] = Py::Int( static_cast( total ) ); Py::Object results; try { results = callback.apply( args ); } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_progress"; } } #endif #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC ) #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC_1_6 ) Py::Object toConflictVersion( const svn_wc_conflict_version_t *version ) { if( version == NULL ) return Py::None(); Py::Dict ver; ver["repos_url"] = utf8_string_or_none( version->repos_url ); ver["peg_rev"] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, version->peg_rev ) ); ver["path_in_repos"] = utf8_string_or_none( version->path_in_repos ); ver["node_kind"] = toEnumValue( version->node_kind ); return ver; } #endif Py::Object toConflictDescription( const svn_wc_conflict_description_t *description, SvnPool &pool ) { if( description == NULL ) return Py::None(); Py::Dict desc; desc["path"] = Py::String( description->path ); desc["node_kind"] = toEnumValue( description->node_kind ); desc["kind"] = toEnumValue( description->kind ); desc["property_name"] = utf8_string_or_none( description->property_name ); desc["is_binary"] = Py::Boolean( description->is_binary != 0 ); desc["mime_type"] = utf8_string_or_none( description->mime_type ); desc["action"] = toEnumValue( description->action ); desc["reason"] = toEnumValue( description->reason ); desc["base_file"] = path_string_or_none( description->base_file, pool ); desc["their_file"] = path_string_or_none( description->their_file, pool ); desc["my_file"] = path_string_or_none( description->my_file, pool ); desc["merged_file"] = path_string_or_none( description->merged_file, pool ); #if defined( PYSVN_HAS_SVN_CLIENT_CTX_T__CONFLICT_FUNC_1_6 ) desc["operation"] = toEnumValue( description->operation ); desc["src_left_version"] = toConflictVersion( description->src_left_version ); desc["src_right_version"] = toConflictVersion( description->src_right_version ); #endif return desc; } bool pysvn_context::contextConflictResolver ( svn_wc_conflict_result_t **result, const svn_wc_conflict_description_t *description, apr_pool_t *conflict_resolver_pool ) { TRACE_CALLBACK( contextConflictResolver ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_ConflictResolver.isCallable() ) return false; Py::Callable callback( m_pyfn_ConflictResolver ); SvnPool pool( *this ); Py::Tuple args( 1 ); args[0] = toConflictDescription( description, pool ); try { Py::Tuple py_result( callback.apply( args ) ); Py::ExtensionObject< pysvn_enum_value > py_kind( py_result[0] ); svn_wc_conflict_choice_t choice( py_kind.extensionObject()->m_value ); Py::Object py_merge_file( py_result[1] ); const char *merged_file = NULL; if( !py_merge_file.isNone() ) { Py::String pystr_merge_file( py_merge_file ); std::string std_merged_file( pystr_merge_file.as_std_string( name_utf8 ) ); merged_file = svn_string_ncreate( std_merged_file.data(), std_merged_file.length(), getContextPool() )->data; } #if defined( PYSVN_HAS_SVN_WC_CONFLICT_RESULT_T__SAVE_MERGED ) svn_boolean_t save_merged = py_result[2].isTrue() ? TRUE : FALSE; #endif *result = svn_wc_create_conflict_result( choice, merged_file, conflict_resolver_pool ); #if defined( PYSVN_HAS_SVN_WC_CONFLICT_RESULT_T__SAVE_MERGED ) (*result)->save_merged = save_merged; #endif return true; } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_conflict_resolver"; return false; } } #endif // // this method will be called to notify about // the progress of an ongoing action // #if defined( PYSVN_HAS_CONTEXT_NOTIFY2 ) void pysvn_context::contextNotify2 ( const svn_wc_notify_t *notify, apr_pool_t *pool ) { TRACE_CALLBACK( contextNotify2 ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_Notify.isCallable() ) return; Py::Callable callback( m_pyfn_Notify ); Py::Tuple args( 1 ); Py::Dict info; args[0] = info; info["path"] = Py::String( notify->path ); info["action"] = toEnumValue( notify->action ); info["kind"] = toEnumValue( notify->kind ); info["mime_type"] = utf8_string_or_none( notify->mime_type ); info["content_state"] = toEnumValue( notify->content_state ); info["prop_state"] = toEnumValue( notify->prop_state ); info["revision"] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, notify->revision ) ); if( notify->err != NULL ) { SvnException error( notify->err ); info["error"] = error.pythonExceptionArg( 1 ); } else { info["error"] = Py::None(); } Py::Object results; try { results = callback.apply( args ); } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_notify"; } } #else void pysvn_context::contextNotify ( const char *path, svn_wc_notify_action_t action, svn_node_kind_t kind, const char *mime_type, svn_wc_notify_state_t content_state, svn_wc_notify_state_t prop_state, svn_revnum_t revnum ) { TRACE_CALLBACK( contextNotify ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_Notify.isCallable() ) return; Py::Callable callback( m_pyfn_Notify ); Py::Tuple args( 1 ); Py::Dict info; args[0] = info; info["path"] = Py::String( path ); info["action"] = toEnumValue( action ); info["kind"] = toEnumValue( kind ); if( mime_type == NULL ) info["mime_type"] = Py::None(); else info["mime_type"] = Py::String( mime_type ); info["content_state"] = toEnumValue( content_state ); info["prop_state"] = toEnumValue( prop_state ); info["revision"] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); Py::Object results; try { results = callback.apply( args ); } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_notify"; } } #endif // // Return true to cancel a long running operation // bool pysvn_context::contextCancel() { TRACE_CALLBACK( contextCancel ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_Cancel.isCallable() ) return false; Py::Callable callback( m_pyfn_Cancel ); Py::Tuple args( 0 ); // bool Py::Object result; Py::Int retcode; try { result = callback.apply( args ); retcode = result; return long( retcode ) != 0; } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_cancel"; return false; } } void pysvn_context::setLogMessage( const std::string & a_msg ) { m_log_message = a_msg; } // // this method will be called to retrieve // a log message // bool pysvn_context::contextGetLogMessage( std::string & a_msg ) { TRACE_CALLBACK( contextGetLogMessage ); if( !m_log_message.empty() ) { a_msg = m_log_message; m_log_message.erase(); return true; } PythonDisallowThreads callback_permission( m_permission ); if( !m_pyfn_GetLogMessage.isCallable() ) { m_error_message = "callback_get_log_message required"; return false; } Py::Tuple args( 0 ); try { return get_string( m_pyfn_GetLogMessage, args, a_msg ); } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_get_log_message"; } return false; } // // this method is called if there is ssl server // information, that has to be confirmed by the user // // @param data // @return @a SslServerTrustAnswer // bool pysvn_context::contextSslServerTrustPrompt ( const svn_auth_ssl_server_cert_info_t &info, const std::string &realm, apr_uint32_t &a_accepted_failures, bool &accept_permanent ) { TRACE_CALLBACK( contextSslServerTrustPrompt ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_SslServerTrustPrompt.isCallable() ) { m_error_message = "callback_ssl_server_trust_prompt required"; return false; } Py::Callable callback( m_pyfn_SslServerTrustPrompt ); Py::Dict trust_info; trust_info[Py::String("failures")] = Py::Int( long( a_accepted_failures ) ); trust_info[Py::String("hostname")] = Py::String( info.hostname ); trust_info[Py::String("finger_print")] = Py::String( info.fingerprint ); trust_info[Py::String("valid_from")] = Py::String( info.valid_from ); trust_info[Py::String("valid_until")] = Py::String( info.valid_until ); trust_info[Py::String("issuer_dname")] = Py::String( info.issuer_dname ); trust_info[Py::String("realm")] = Py::String( realm ); Py::Tuple args( 1 ); args[0] = trust_info; Py::Tuple result_tuple; Py::Int retcode; Py::Int accepted_failures; Py::Int may_save; try { result_tuple = callback.apply( args ); retcode = result_tuple[0]; accepted_failures = result_tuple[1]; may_save = result_tuple[2]; a_accepted_failures = long( accepted_failures ); if( long( retcode ) != 0 ) { accept_permanent = long( may_save ) != 0; return true; } else return false; } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_ssl_server_trust_prompt"; } return false; } // // this method is called to retrieve client side // information // bool pysvn_context::contextSslClientCertPrompt( std::string &_cert_file, const std::string &_realm, bool &_may_save ) { TRACE_CALLBACK( contextSslClientCertPrompt ); PythonDisallowThreads callback_permission( m_permission ); if( !m_pyfn_SslClientCertPrompt.isCallable() ) { m_error_message = "callback_ssl_client_cert_prompt required"; return false; } Py::Callable callback( m_pyfn_SslClientCertPrompt ); Py::Tuple args( 2 ); args[0] = Py::String( _realm ); args[1] = Py::Int( _may_save ); Py::Tuple results; Py::Int retcode; Py::String cert_file; Py::Int may_save_out; try { results = callback.apply( args ); retcode = results[0]; cert_file = results[1]; may_save_out = results[2]; if( long( retcode ) != 0 ) { _cert_file = cert_file.as_std_string( g_utf_8 ); _may_save = long( may_save_out ) != 0; return true; } } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_ssl_client_cert_prompt"; return false; } return false; } // // this method is called to retrieve the password // for the certificate // // @param password // bool pysvn_context::contextSslClientCertPwPrompt ( std::string &_password, const std::string &_realm, bool &_may_save ) { TRACE_CALLBACK( contextSslClientCertPwPrompt ); PythonDisallowThreads callback_permission( m_permission ); // make sure we can call the users object if( !m_pyfn_SslClientCertPwPrompt.isCallable() ) { m_error_message = "callback_ssl_client_cert_password_prompt required"; return false; } Py::Callable callback( m_pyfn_SslClientCertPwPrompt ); Py::Tuple args( 2 ); args[0] = Py::String( _realm ); args[1] = Py::Int( (long)_may_save ); // bool, username, password Py::Tuple results; Py::Int retcode; Py::String username; Py::String password; Py::Int may_save_out; try { results = callback.apply( args ); retcode = results[0]; password = results[1]; may_save_out = results[2]; // true returned if( long( retcode ) != 0 ) { // copy out the answers _password = password.as_std_string( g_utf_8 ); _may_save = long( may_save_out ) != 0; return true; } } catch( Py::Exception &e ) { PyErr_Print(); e.clear(); m_error_message = "unhandled exception in callback_ssl_client_cert_password_prompt"; return false; } return false; } // common get a string implementation static bool get_string( Py::Object &fn, Py::Tuple &args, std::string &msg ) { // make sure we can call the users object if( !fn.isCallable() ) return false; Py::Callable callback( fn ); Py::Tuple results; Py::Int retcode; Py::String message; results = callback.apply( args ); retcode = results[0]; message = results[1]; // true returned if( long( retcode ) != 0 ) { // copy out the answers msg = message.as_std_string( g_utf_8 ); return true; } return false; } pysvn-1.9.22/Source/pysvn_client_cmd_add.cpp000644 000765 000024 00000037364 12710152507 021377 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_prop.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "pysvn_static_strings.hpp" Py::Object pysvn_client::cmd_add( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_ADD2 ) { false, name_force }, #endif #if defined( PYSVN_HAS_CLIENT_ADD3 ) { false, name_ignore }, #endif #if defined( PYSVN_HAS_CLIENT_ADD4 ) { false, name_depth }, { false, name_add_parents }, #endif #if defined( PYSVN_HAS_CLIENT_ADD5 ) { false, name_autoprops }, #endif { false, NULL } }; FunctionArguments args( "add", args_desc, a_args, a_kws ); args.check(); Py::List path_list( toListOfStrings( args.getArg( name_path ) ) ); #if defined( PYSVN_HAS_CLIENT_ADD2 ) bool force = args.getBoolean( name_force, false ); #endif #if defined( PYSVN_HAS_CLIENT_ADD3 ) bool ignore = args.getBoolean( name_ignore, true ); #endif #if defined( PYSVN_HAS_CLIENT_ADD4 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_empty ); bool add_parents = args.getBoolean( name_add_parents, false ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_ADD5 ) bool autoprops = args.getBoolean( name_autoprops, true ); #endif SvnPool pool( m_context ); try { for( Py::List::size_type i=0; idata, (int)stringbuf->len ); #if defined( PYSVN_HAS_CLIENT_CAT3 ) if( get_props ) { Py::Tuple result( 2 ); result[0] = contents; result[1] = propsToObject( props, pool ); return result; } else #endif { return contents; } } Py::Object pysvn_client::cmd_mkdir( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_log_message }, #if defined( PYSVN_HAS_CLIENT_MKDIR3 ) { false, name_make_parents }, { false, name_revprops }, #endif { false, NULL } }; FunctionArguments args( "mkdir", args_desc, a_args, a_kws ); args.check(); // message that explains to the user the type error that may be thrown next std::string type_error_message; // args to the mkdir call std::string message; bool have_message = false; SvnPool pool( m_context ); apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_url_or_path ), pool ); #if defined( PYSVN_HAS_CLIENT_MKDIR3 ) bool make_parents = args.getBoolean( name_make_parents, false ); apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #endif try { type_error_message = "expecting string message (arg 2)"; if( args.hasArg( name_log_message ) ) { message = args.getUtf8String( name_log_message ); have_message = true; } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } #if defined( PYSVN_HAS_CLIENT_MKDIR4 ) CommitInfoResult commit_info( pool ); #else pysvn_commit_info_t *commit_info = NULL; #endif try { checkThreadPermission(); PythonAllowThreads permission( m_context ); if( have_message ) { m_context.setLogMessage( message.c_str() ); } #if defined( PYSVN_HAS_CLIENT_MKDIR4 ) svn_error_t *error = svn_client_mkdir4 ( targets, make_parents, revprops, commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_MKDIR3 ) svn_error_t *error = svn_client_mkdir3 ( &commit_info, // changed type targets, make_parents, revprops, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_MKDIR2 ) svn_error_t *error = svn_client_mkdir2 ( &commit_info, // changed type targets, m_context, pool ); #else svn_error_t *error = svn_client_mkdir ( &commit_info, targets, m_context, pool ); #endif permission.allowThisThread(); if( error != 0 ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } #if defined( PYSVN_HAS_CLIENT_MKDIR4 ) return toObject( commit_info, m_wrapper_commit_info, m_commit_info_style ); #else return toObject( commit_info, m_commit_info_style ); #endif } Py::Object pysvn_client::cmd_remove( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_force }, #if defined( PYSVN_HAS_CLIENT_DELETE3 ) { false, name_keep_local }, { false, name_revprops }, #endif { false, NULL } }; FunctionArguments args( "remove", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); bool force = args.getBoolean( name_force, false ); #if defined( PYSVN_HAS_CLIENT_DELETE3 ) bool keep_local = args.getBoolean( name_keep_local, false ); apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #endif apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_url_or_path ), pool ); #if defined( PYSVN_HAS_CLIENT_MKDIR4 ) CommitInfoResult commit_info( pool ); #else pysvn_commit_info_t *commit_info = NULL; #endif try { checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_DELETE4 ) svn_error_t *error = svn_client_delete4 ( targets, force, keep_local, revprops, commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DELETE3 ) svn_error_t *error = svn_client_delete3 ( &commit_info, targets, force, keep_local, revprops, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_DELETE2 ) svn_error_t *error = svn_client_delete2 ( &commit_info, // commit_info changed targets, force, m_context, pool ); #else svn_error_t *error = svn_client_delete ( &commit_info, targets, force, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } #if defined( PYSVN_HAS_CLIENT_MKDIR4 ) return toObject( commit_info, m_wrapper_commit_info, m_commit_info_style ); #else return toObject( commit_info, m_commit_info_style ); #endif } Py::Object pysvn_client::cmd_revert( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_REVERT2 ) { false, name_depth }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_REVERT3 ) { false, name_clear_changelists }, { false, name_metadata_only }, #endif { false, NULL } }; FunctionArguments args( "revert", args_desc, a_args, a_kws ); args.check(); std::string type_error_message; SvnPool pool( m_context ); apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); try { #if defined( PYSVN_HAS_CLIENT_REVERT2 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_empty, svn_depth_infinity, svn_depth_empty ); #else bool recurse = args.getBoolean( name_recurse, false ); #endif #if defined( PYSVN_HAS_CLIENT_REVERT3 ) bool clear_changelists = args.getBoolean( name_clear_changelists, false ); bool metadata_only = args.getBoolean( name_metadata_only, false ); #endif try { checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_REVERT3 ) svn_error_t *error = svn_client_revert3 ( targets, depth, changelists, clear_changelists, metadata_only, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_REVERT2 ) svn_error_t *error = svn_client_revert2 ( targets, depth, changelists, m_context, pool ); #else svn_error_t *error = svn_client_revert ( targets, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } pysvn-1.9.22/Source/setup_backport.py000644 000765 000024 00000004464 11132430564 020114 0ustar00barrystaff000000 000000 # # backport_sources.py # # fixup the python sources to work with python2.5 and earlier # import os import sys def backportRequired(): try: import setup_backport_probe return False except SyntaxError: return True def cmd_help( argv ): progname = os.path.basename( argv[0] ) print( ''' Backport the PySVN sources to work with python 2.5 and earlier python %(progname)s backport [] ''' % {'progname': progname} ) def cmd_backport( argv ): if len(argv) > 2: pysvn_root = argv[2] else: pysvn_root = '..' if os.path.exists( os.path.join( pysvn_root, '.svn' ) ): print( 'Error: Cannot apply backport command to a subversion working copy - becuase of risk of backported files being committed.' ) return 1 all_files = [] walk( pysvn_root, all_files ) all_files.sort() backported = 0 for filename in all_files: if fixup_source( filename ): backported += 1 if backported == 0: print( 'Warning: Of %d candidate files no files required backporting' % len(all_files) ) else: print( 'Info: Backported source for %d files' % backported ) return 0 def walk( dirname, all_files ): for filename in os.listdir( dirname ): filename = os.path.join( dirname, filename ) if os.path.isdir( filename ): walk( filename, all_files ) elif filename.endswith( '.py' ): all_files.append( filename ) elif filename.endswith( '.py.template' ): all_files.append( filename ) def fixup_source( filename ): f = open( filename, 'r' ) all_lines = f.readlines() f.close() replaced = False for index in range( len( all_lines ) ): if( all_lines[ index ].strip().startswith( 'except ' ) and ' as e:' in all_lines[ index ] ): replaced = True print( 'Info: processing %s' % filename ) print( 'Info: Before: %r' % all_lines[ index ] ) all_lines[ index ] = all_lines[ index ].replace( ' as e:', ', e:' ) print( 'Info: After: %r' % all_lines[ index ] ) if replaced: print( 'Info: Updating %s' % filename ) f = open( filename, 'w' ) f.write( ''.join( all_lines ) ) f.close() return replaced pysvn-1.9.22/Source/pysvn_revision.cpp000644 000765 000024 00000007344 11132131027 020306 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_revision.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_docs.hpp" //-------------------------------------------------------------------------------- static apr_time_t toAprTime( double t_in ) { return apr_time_t( t_in * 1000000 ); } pysvn_revision::pysvn_revision ( svn_opt_revision_kind kind, double date, int revnum ) { memset( &m_svn_revision, 0, sizeof( m_svn_revision ) ); m_svn_revision.kind = kind; if( kind == svn_opt_revision_date ) m_svn_revision.value.date = toAprTime( date ); if( kind == svn_opt_revision_number ) m_svn_revision.value.number = revnum; } pysvn_revision::~pysvn_revision() { } const svn_opt_revision_t &pysvn_revision::getSvnRevision() const { return m_svn_revision; } Py::Object pysvn_revision::repr() { std::string s("( m_svn_revision.kind ) ); } else if( name == "date" ) { if( m_svn_revision.kind == svn_opt_revision_date ) return Py::Float( double( m_svn_revision.value.date )/1000000 ); else return Py::None(); } else if( name == "number" ) { if( m_svn_revision.kind == svn_opt_revision_number ) return Py::Int( m_svn_revision.value.number ); else return Py::None(); } return getattr_methods( _name ); } int pysvn_revision::setattr( const char *_name, const Py::Object &value ) { std::string name( _name ); if( name == "kind" ) { Py::ExtensionObject< pysvn_enum_value > kind( value ); m_svn_revision.kind = svn_opt_revision_kind( kind.extensionObject()->m_value ); } else if( name == "date" ) { Py::Float py_date( value ); m_svn_revision.value.date = toAprTime( double( py_date ) ); } else if( name == "number" ) { Py::Int revnum( value ); m_svn_revision.value.number = revnum; } else throw Py::AttributeError( "Unknown revision attribute" ); return 0; } void pysvn_revision::init_type() { behaviors().name("revision"); behaviors().doc( pysvn_revision_doc ); behaviors().supportGetattr(); behaviors().supportRepr(); } pysvn-1.9.22/Source/pysvn_client_cmd_checkin.cpp000644 000765 000024 00000051113 14040776677 022261 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_list.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "pysvn_static_strings.hpp" Py::Object pysvn_client::cmd_checkin( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { true, name_log_message }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_COMMIT2 ) { false, name_keep_locks }, #endif #if defined( PYSVN_HAS_CLIENT_COMMIT4 ) { false, name_depth }, { false, name_keep_changelist }, { false, name_changelists }, { false, name_revprops }, #endif #if defined( PYSVN_HAS_CLIENT_COMMIT5 ) { false, name_commit_as_operations }, #endif #if defined( PYSVN_HAS_CLIENT_COMMIT6 ) { false, name_include_file_externals }, { false, name_include_dir_externals }, #endif { false, NULL } }; FunctionArguments args( "checkin", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_COMMIT5 ) CommitInfoResult commit_info( pool ); #else pysvn_commit_info_t *commit_info = NULL; #endif apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); std::string type_error_message; try { type_error_message = "expecting string for message (arg 2)"; std::string message( args.getUtf8String( name_log_message ) ); #ifndef PYSVN_HAS_CLIENT_COMMIT4 type_error_message = "expecting boolean for recurse keyword arg"; bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_COMMIT2 ) type_error_message = "expecting boolean for keep_locks keyword arg"; bool keep_locks = args.getBoolean( name_keep_locks, true ); #endif #if defined( PYSVN_HAS_CLIENT_COMMIT4 ) type_error_message = "expecting recurse or depth keyword arg"; svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); bool keep_changelist = args.getBoolean( name_keep_changelist, false ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } apr_hash_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = hashOfStringsFromDictOfStrings( py_revprop, pool ); } } #endif #if defined( PYSVN_HAS_CLIENT_COMMIT5 ) type_error_message = "expecting boolean for commit_as_operations keyword arg"; bool commit_as_operations = args.getBoolean( name_commit_as_operations, false ); #endif #if defined( PYSVN_HAS_CLIENT_COMMIT6 ) type_error_message = "expecting boolean for include_file_externals keyword arg"; bool include_file_externals = args.getBoolean( name_include_file_externals, false ); type_error_message = "expecting boolean for include_dir_externals keyword arg"; bool include_dir_externals = args.getBoolean( name_include_dir_externals, false ); #endif try { checkThreadPermission(); PythonAllowThreads permission( m_context ); m_context.setLogMessage( message ); #if defined( PYSVN_HAS_CLIENT_COMMIT6 ) svn_error_t *error = svn_client_commit6 ( targets, depth, keep_locks, keep_changelist, commit_as_operations, include_file_externals, include_dir_externals, changelists, revprops, commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_COMMIT5 ) svn_error_t *error = svn_client_commit5 ( targets, depth, keep_locks, keep_changelist, commit_as_operations, changelists, revprops, commit_info.callback(), commit_info.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_COMMIT4 ) svn_error_t *error = svn_client_commit4 ( &commit_info, targets, depth, keep_locks, keep_changelist, changelists, revprops, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_COMMIT3 ) svn_error_t *error = svn_client_commit3 ( &commit_info, // commit info type changed targets, recurse, keep_locks, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_COMMIT2 ) svn_error_t *error = svn_client_commit2 ( &commit_info, targets, recurse, keep_locks, m_context, pool ); #else svn_error_t *error = svn_client_commit ( &commit_info, targets, !recurse, // non recursive m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } #if defined( PYSVN_HAS_CLIENT_COMMIT5 ) return toObject( commit_info, m_wrapper_commit_info, m_commit_info_style ); #else return toObject( commit_info, m_commit_info_style ); #endif } Py::Object pysvn_client::cmd_checkout( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url }, { true, name_path }, { false, name_recurse }, { false, name_revision }, #if defined( PYSVN_HAS_CLIENT_CHECKOUT2 ) { false, name_peg_revision }, { false, name_ignore_externals }, #endif #if defined( PYSVN_HAS_CLIENT_CHECKOUT3 ) { false, name_allow_unver_obstructions }, { false, name_depth }, #endif { false, NULL } }; FunctionArguments args( "checkout", args_desc, a_args, a_kws ); args.check(); std::string url( args.getUtf8String( name_url ) ); if( !is_svn_url( url ) ) { throw Py::AttributeError( "checkout url argument is not a valid SVN URL" ); } std::string path( args.getUtf8String( name_path ) ); #if defined( PYSVN_HAS_CLIENT_CHECKOUT3 ) bool allow_unver_obstructions = args.getBoolean( name_allow_unver_obstructions, false ); svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_files ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); #if defined( PYSVN_HAS_CLIENT_CHECKOUT2 ) svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); bool ignore_externals = args.getBoolean( name_ignore_externals, false ); #endif SvnPool pool( m_context ); bool is_url = is_svn_url( path ); #if defined( PYSVN_HAS_CLIENT_CHECKOUT2 ) revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); #endif revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); svn_revnum_t revnum = 0; try { std::string norm_url( svnNormalisedIfPath( url, pool ) ); std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_CHECKOUT3 ) svn_error_t *error = svn_client_checkout3 ( &revnum, norm_url.c_str(), norm_path.c_str(), &peg_revision, &revision, depth, ignore_externals, allow_unver_obstructions, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_CHECKOUT2 ) svn_error_t *error = svn_client_checkout2 ( &revnum, norm_url.c_str(), norm_path.c_str(), &peg_revision, &revision, recurse, ignore_externals, m_context, pool ); #else svn_error_t *error = svn_client_checkout ( &revnum, norm_url.c_str(), norm_path.c_str(), &revision, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, revnum ) ); } Py::Object pysvn_client::cmd_cleanup( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, #if defined( PYSVN_HAS_CLIENT_CLEANUP2 ) { false, name_break_locks }, { false, name_fix_recorded_timestamps }, { false, name_clear_dav_cache }, { false, name_vacuum_pristines }, { false, name_include_externals }, #endif { false, NULL } }; FunctionArguments args( "cleanup", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); #if defined( PYSVN_HAS_CLIENT_CLEANUP2 ) bool break_locks = args.getBoolean( name_break_locks, true ); bool fix_recorded_timestamps = args.getBoolean( name_fix_recorded_timestamps, true ); bool clear_dav_cache = args.getBoolean( name_clear_dav_cache, true ); bool vacuum_pristines = args.getBoolean( name_vacuum_pristines, true ); bool include_externals = args.getBoolean( name_include_externals, false ); #endif SvnPool pool( m_context ); try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_CLEANUP2 ) const char *abspath = NULL; svn_error_t *error = svn_dirent_get_absolute( &abspath, norm_path.c_str(), pool ); if( error == NULL ) { error = svn_client_cleanup2 ( abspath, break_locks, fix_recorded_timestamps, clear_dav_cache, vacuum_pristines, include_externals, m_context, pool ); } #else svn_error_t * error = svn_client_cleanup ( norm_path.c_str(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #if defined( PYSVN_HAS_CLIENT_VACUUM ) Py::Object pysvn_client::cmd_vacuum( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_remove_unversioned_items }, { false, name_remove_ignored_items }, { false, name_fix_recorded_timestamps }, { false, name_vacuum_pristines }, { false, name_include_externals }, { false, NULL } }; FunctionArguments args( "vacuum", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); bool remove_unversioned_items = args.getBoolean( name_remove_unversioned_items, false ); bool remove_ignored_items = args.getBoolean( name_remove_ignored_items, false ); bool fix_recorded_timestamps = args.getBoolean( name_fix_recorded_timestamps, true ); bool vacuum_pristines = args.getBoolean( name_vacuum_pristines, true ); bool include_externals = args.getBoolean( name_include_externals, false ); SvnPool pool( m_context ); try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); const char *abspath = NULL; svn_error_t *error = svn_dirent_get_absolute( &abspath, norm_path.c_str(), pool ); if( error == NULL ) { error = svn_client_vacuum ( abspath, remove_unversioned_items, remove_ignored_items, fix_recorded_timestamps, vacuum_pristines, include_externals, m_context, pool ); } permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } #endif Py::Object pysvn_client::cmd_resolved( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_RESOLVE ) { false, name_depth }, { false, name_conflict_choice }, #endif { false, NULL } }; FunctionArguments args( "resolved", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); #if defined( PYSVN_HAS_CLIENT_RESOLVE ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_files, svn_depth_infinity, svn_depth_files ); svn_wc_conflict_choice_t conflict_choice = args.getWcConflictChoice( name_conflict_choice, svn_wc_conflict_choose_merged ); #else bool recurse = args.getBoolean( name_recurse, false ); #endif SvnPool pool( m_context ); try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_RESOLVE ) svn_error_t *error = svn_client_resolve ( norm_path.c_str(), depth, conflict_choice, m_context, pool ); #else svn_error_t *error = svn_client_resolved ( norm_path.c_str(), recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return Py::None(); } Py::Object pysvn_client::cmd_update( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, { false, name_revision }, #if defined( PYSVN_HAS_CLIENT_UPDATE2 ) { false, name_ignore_externals }, #endif #if defined( PYSVN_HAS_CLIENT_UPDATE3 ) { false, name_depth }, { false, name_depth_is_sticky }, { false, name_allow_unver_obstructions }, #endif #if defined( PYSVN_HAS_CLIENT_UPDATE4 ) { false, name_adds_as_modification }, { false, name_make_parents }, #endif { false, NULL } }; FunctionArguments args( "update", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); apr_array_header_t *targets = targetsFromStringOrList( args.getArg( name_path ), pool ); svn_opt_revision_t revision = args.getRevision( name_revision, svn_opt_revision_head ); #if defined( PYSVN_HAS_CLIENT_UPDATE3 ) svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_unknown, svn_depth_unknown, svn_depth_files ); bool depth_is_sticky = args.getBoolean( name_depth_is_sticky, false ); bool allow_unver_obstructions = args.getBoolean( name_allow_unver_obstructions, false ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_UPDATE2 ) bool ignore_externals = args.getBoolean( name_ignore_externals, false ); #endif #if defined( PYSVN_HAS_CLIENT_UPDATE4 ) bool adds_as_modification = args.getBoolean( name_adds_as_modification, false ); bool make_parents = args.getBoolean( name_make_parents, false ); #endif apr_array_header_t *result_revs = NULL; try { checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_UPDATE4 ) svn_error_t *error = svn_client_update4 ( &result_revs, targets, &revision, depth, depth_is_sticky, ignore_externals, allow_unver_obstructions, adds_as_modification, make_parents, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_UPDATE3 ) svn_error_t *error = svn_client_update3 ( &result_revs, targets, &revision, depth, depth_is_sticky, ignore_externals, allow_unver_obstructions, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_UPDATE2 ) svn_error_t *error = svn_client_update2 ( &result_revs, targets, &revision, recurse, ignore_externals, m_context, pool ); #else svn_error_t *error = svn_client_update ( &result_revs, targets, &revision, recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return revnumListToObject( result_revs, pool ); } #if defined( PYSVN_HAS_CLIENT_UPGRADE ) Py::Object pysvn_client::cmd_upgrade( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, NULL } }; FunctionArguments args( "upgrade", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); std::string type_error_message; try { type_error_message = "expecting string for path keyword arg"; std::string path( args.getUtf8String( name_path ) ); std::string norm_path( svnNormalisedIfPath( path, pool ) ); try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_upgrade( norm_path.c_str(), m_context, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } } catch( Py::TypeError & ) { throw Py::TypeError( type_error_message ); } return Py::None(); } #endif pysvn-1.9.22/Source/pysvn_client_cmd_info.cpp000644 000765 000024 00000172172 12710155034 021575 0ustar00barrystaff000000 000000 // // ==================================================================== // Copyright (c) 2003-2009 Barry A Scott. All rights reserved. // // This software is licensed as described in the file LICENSE.txt, // which you should have received as part of this distribution. // // ==================================================================== // // // pysvn_client_cmd_info.cpp // #if defined( _MSC_VER ) // disable warning C4786: symbol greater than 255 character, // nessesary to ignore as causes lots of warning #pragma warning(disable: 4786) #endif #include "pysvn.hpp" #include "pysvn_svnenv.hpp" #include "svn_path.h" #include "svn_config.h" #include "pysvn_static_strings.hpp" #if defined( PYSVN_HAS_CLIENT_ANNOTATE5 ) class AnnotatedLineInfo2 { public: AnnotatedLineInfo2 ( apr_int64_t line_no, svn_revnum_t revision, apr_hash_t *rev_props, apr_hash_t *merged_rev_props, svn_revnum_t merged_revision, const char *merged_path, const char *line, svn_boolean_t local_change ) : m_line_no( line_no ) , m_revision( revision ) , m_rev_props( rev_props ) //QQQ: need to copy? , m_merged_revision( merged_revision) , m_merged_rev_props( merged_rev_props ) //QQQ: need to copy? , m_merged_path() , m_line() , m_local_change( local_change ) { if( merged_path != NULL ) m_merged_path = merged_path; if( line != NULL ) m_line = line; } ~AnnotatedLineInfo2() { } AnnotatedLineInfo2( const AnnotatedLineInfo2 &other ) : m_line_no( other.m_line_no ) , m_revision( other.m_revision ) , m_rev_props( other.m_rev_props ) , m_merged_revision( other.m_merged_revision ) , m_merged_rev_props( other.m_merged_rev_props ) , m_merged_path( other.m_merged_path ) , m_line( other.m_line ) , m_local_change( other.m_local_change ) { } Py::Dict asDict( SvnPool &pool ) const { Py::Dict dict; dict[name_line] = Py::String( m_line ); dict[name_number] = Py::Int( long( m_line_no ) ); dict[name_revision] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, m_revision ) ); // rev_props dict[name_local_change] = Py::Boolean( m_local_change ); if( SVN_IS_VALID_REVNUM( m_merged_revision ) ) { dict[name_merged_revision] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, m_merged_revision ) ); dict[name_merged_path] = path_string_or_none( m_merged_path, pool ); // merged_rev_props } else { dict[name_merged_revision] = Py::None(); dict[name_merged_path] = Py::None(); // merged_rev_props } return dict; } apr_int64_t m_line_no; svn_revnum_t m_revision; apr_hash_t *m_rev_props; svn_revnum_t m_merged_revision; apr_hash_t *m_merged_rev_props; std::string m_merged_path; std::string m_line; bool m_local_change; }; extern "C" svn_error_t *annotate3_receiver ( void *baton, svn_revnum_t start_revnum, svn_revnum_t end_revnum, apr_int64_t line_no, svn_revnum_t revision, apr_hash_t *rev_props, svn_revnum_t merged_revision, apr_hash_t *merged_rev_props, const char *merged_path, const char *line, svn_boolean_t local_change, apr_pool_t *pool ); class AnnotateBaton2 { public: AnnotateBaton2() : m_all_entries() { } ~AnnotateBaton2() { } svn_client_blame_receiver3_t callback() { return &annotate3_receiver; } void *baton() { return static_cast( this ); }; static AnnotateBaton2 *castBaton( void *baton_ ) { return static_cast( baton_ ); } std::list m_all_entries; }; extern "C" svn_error_t *annotate3_receiver ( void *baton, svn_revnum_t start_revnum, svn_revnum_t end_revnum, apr_int64_t line_no, svn_revnum_t revision, apr_hash_t *rev_props, svn_revnum_t merged_revision, apr_hash_t *merged_rev_props, const char *merged_path, const char *line, svn_boolean_t local_change, apr_pool_t *pool ) { // There are cases when the author has been passed as NULL // protect against NULL passed for any of the strings if( merged_path == NULL ) merged_path = ""; if( line == NULL ) line = ""; AnnotateBaton2 *annotate_baton = AnnotateBaton2::castBaton( baton ); annotate_baton->m_all_entries.push_back( AnnotatedLineInfo2( line_no, revision, rev_props, merged_rev_props, merged_revision, merged_path, line, local_change ) ); return NULL; } #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE4 ) class AnnotatedLineInfo { public: AnnotatedLineInfo ( apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, svn_revnum_t merged_revision, const char *merged_author, const char *merged_date, const char *merged_path, const char *line ) : m_line_no( line_no ) , m_revision( revision ) , m_author() , m_date() , m_merged_revision( merged_revision) , m_merged_author() , m_merged_date() , m_merged_path() , m_line() { if( author != NULL ) m_author = author; if( date != NULL ) m_date = date; if( merged_author != NULL ) m_merged_author = merged_author; if( merged_date != NULL ) m_merged_date = merged_date; if( merged_path != NULL ) m_merged_path = merged_path; if( line != NULL ) m_line = line; } ~AnnotatedLineInfo() { } AnnotatedLineInfo( const AnnotatedLineInfo &other ) : m_line_no( other.m_line_no ) , m_revision( other.m_revision ) , m_author( other.m_author ) , m_date( other.m_date ) , m_merged_revision( other.m_merged_revision ) , m_merged_author( other.m_merged_author ) , m_merged_date( other.m_merged_date ) , m_merged_path( other.m_merged_path ) , m_line( other.m_line ) { } apr_int64_t m_line_no; svn_revnum_t m_revision; std::string m_author; std::string m_date; svn_revnum_t m_merged_revision; std::string m_merged_author; std::string m_merged_date; std::string m_merged_path; std::string m_line; }; extern "C" svn_error_t *annotate2_receiver ( void *baton, apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, svn_revnum_t merged_revision, const char *merged_author, const char *merged_date, const char *merged_path, const char *line, apr_pool_t *pool ); class AnnotateBaton { public: AnnotateBaton() : m_all_entries() { } ~AnnotateBaton() { } svn_client_blame_receiver2_t callback() { return &annotate2_receiver; } void *baton() { return static_cast( this ); }; static AnnotateBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } std::list m_all_entries; }; extern "C" svn_error_t *annotate2_receiver ( void *baton, apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, svn_revnum_t merged_revision, const char *merged_author, const char *merged_date, const char *merged_path, const char *line, apr_pool_t *pool ) { // There are cases when the author has been passed as NULL // protect against NULL passed for any of the strings if( author == NULL ) author = ""; if( date == NULL ) date = ""; if( merged_author == NULL ) merged_author = ""; if( merged_date == NULL ) merged_date = ""; if( merged_path == NULL ) merged_path = ""; if( line == NULL ) line = ""; AnnotateBaton *annotate_baton = AnnotateBaton::castBaton( baton ); annotate_baton->m_all_entries.push_back( AnnotatedLineInfo( line_no, revision, author, date, merged_revision, merged_author, merged_date, merged_path, line ) ); return NULL; } #else class AnnotatedLineInfo { public: AnnotatedLineInfo ( apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, const char *line ) : m_line_no( line_no ) , m_revision( revision ) , m_author( author ) , m_date( date ) , m_line( line ) { } ~AnnotatedLineInfo() { } AnnotatedLineInfo( const AnnotatedLineInfo &other ) : m_line_no( other.m_line_no ) , m_revision( other.m_revision ) , m_author( other.m_author ) , m_date( other.m_date ) , m_line( other.m_line ) { } apr_int64_t m_line_no; svn_revnum_t m_revision; std::string m_author; std::string m_date; std::string m_line; }; extern "C" svn_error_t *annotate1_receiver ( void *baton, apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, const char *line, apr_pool_t *pool ); class AnnotateBaton { public: AnnotateBaton() : m_all_entries() { } ~AnnotateBaton() { } svn_client_blame_receiver_t callback() { return &annotate1_receiver; } void *baton() { return static_cast( this ); }; static AnnotateBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } std::list m_all_entries; }; extern "C" svn_error_t *annotate1_receiver ( void *baton, apr_int64_t line_no, svn_revnum_t revision, const char *author, const char *date, const char *line, apr_pool_t *pool ) { // There are cases when the author has been passed as NULL // protect against NULL passed for any of the strings if( author == NULL ) author = ""; if( date == NULL ) date = ""; if( line == NULL ) line = ""; AnnotateBaton *annotate_baton = AnnotateBaton::castBaton( baton ); annotate_baton->m_all_entries.push_back( AnnotatedLineInfo( line_no, revision, author, date, line ) ); return NULL; } #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE5 ) Py::Object pysvn_client::cmd_annotate2( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision_start }, { false, name_revision_end }, { false, name_peg_revision }, { false, name_ignore_space }, { false, name_ignore_eol_style }, { false, name_ignore_mime_type }, { false, name_include_merged_revisions }, { false, NULL } }; FunctionArguments args( "annotate", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path, empty_string ) ); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_number ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_head ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision_end ); svn_diff_file_ignore_space_t ignore_space = svn_diff_file_ignore_space_none; if( args.hasArg( name_ignore_space ) ) { Py::ExtensionObject< pysvn_enum_value > py_ignore_space( args.getArg( name_ignore_space ) ); ignore_space = svn_diff_file_ignore_space_t( py_ignore_space.extensionObject()->m_value ); } svn_boolean_t ignore_eol_style = args.getBoolean( name_ignore_eol_style, false ); svn_boolean_t ignore_mime_type = args.getBoolean( name_ignore_mime_type, false ); svn_boolean_t include_merged_revisions = args.getBoolean( name_include_merged_revisions, false ); SvnPool pool( m_context ); svn_diff_file_options_t *diff_options = svn_diff_file_options_create( pool ); diff_options->ignore_space = ignore_space; diff_options->ignore_eol_style = ignore_eol_style; bool is_url = is_svn_url( path ); revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_start, name_revision_start, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_end, name_revision_end, name_url_or_path ); AnnotateBaton2 annotate_baton; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_error_t *error = svn_client_blame5 ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, diff_options, ignore_mime_type, include_merged_revisions, annotate_baton.callback(), annotate_baton.baton(), m_context, pool ); permission.allowThisThread(); if( error != NULL ) { throw SvnException( error ); } } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // convert the entries into python objects Py::List all_lines; for( std::list::const_iterator entry_it = annotate_baton.m_all_entries.begin(); entry_it != annotate_baton.m_all_entries.end(); ++entry_it ) { all_lines.append( entry_it->asDict( pool ) ); } return all_lines; } #endif Py::Object pysvn_client::cmd_annotate( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision_start }, { false, name_revision_end }, #if defined( PYSVN_HAS_CLIENT_ANNOTATE2 ) { false, name_peg_revision }, #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE3 ) { false, name_ignore_space }, { false, name_ignore_eol_style }, { false, name_ignore_mime_type }, #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE4 ) { false, name_include_merged_revisions }, #endif { false, NULL } }; FunctionArguments args( "annotate", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path, empty_string ) ); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_number ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_head ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE2 ) svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision_end ); #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE3 ) svn_diff_file_ignore_space_t ignore_space = svn_diff_file_ignore_space_none; if( args.hasArg( name_ignore_space ) ) { Py::ExtensionObject< pysvn_enum_value > py_ignore_space( args.getArg( name_ignore_space ) ); ignore_space = svn_diff_file_ignore_space_t( py_ignore_space.extensionObject()->m_value ); } svn_boolean_t ignore_eol_style = args.getBoolean( name_ignore_eol_style, false ); svn_boolean_t ignore_mime_type = args.getBoolean( name_ignore_mime_type, false ); #endif #if defined( PYSVN_HAS_CLIENT_ANNOTATE4 ) svn_boolean_t include_merged_revisions = args.getBoolean( name_include_merged_revisions, false ); #endif SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE3 ) svn_diff_file_options_t *diff_options = svn_diff_file_options_create( pool ); diff_options->ignore_space = ignore_space; diff_options->ignore_eol_style = ignore_eol_style; #endif bool is_url = is_svn_url( path ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE2 ) revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); #endif revisionKindCompatibleCheck( is_url, revision_start, name_revision_start, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision_end, name_revision_end, name_url_or_path ); AnnotateBaton annotate_baton; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_ANNOTATE4 ) svn_error_t *error = svn_client_blame4 // ignore deprecation warning - support old Client().annotate() ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, diff_options, ignore_mime_type, include_merged_revisions, annotate_baton.callback(), annotate_baton.baton(), m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_ANNOTATE3 ) svn_error_t *error = svn_client_blame3 ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, diff_options, ignore_mime_type, annotate_receiver, annotate_baton.callback(), annotate_baton.baton(), pool ); #elif defined( PYSVN_HAS_CLIENT_ANNOTATE2 ) svn_error_t *error = svn_client_blame2 ( norm_path.c_str(), &peg_revision, &revision_start, &revision_end, annotate_baton.callback(), annotate_baton.baton(), m_context, pool ); #else svn_error_t *error = svn_client_blame ( norm_path.c_str(), &revision_start, &revision_end, annotate_baton.callback(), annotate_baton.baton(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) { throw SvnException( error ); } } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // convert the entries into python objects Py::List entries_list; std::list::const_iterator entry_it = annotate_baton.m_all_entries.begin(); while( entry_it != annotate_baton.m_all_entries.end() ) { const AnnotatedLineInfo &entry = *entry_it; ++entry_it; Py::Dict entry_dict; entry_dict[name_author] = Py::String( entry.m_author, name_utf8 ); entry_dict[name_date] = Py::String( entry.m_date ); entry_dict[name_line] = Py::String( entry.m_line ); entry_dict[name_number] = Py::Int( long( entry.m_line_no ) ); entry_dict[name_revision] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, entry.m_revision ) ); entries_list.append( entry_dict ); } return entries_list; } Py::Object pysvn_client::cmd_info( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, NULL } }; FunctionArguments args( "info", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_path ) ); SvnPool pool( m_context ); const svn_wc_entry_t *entry = NULL; try { checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_wc_adm_access_t *adm_access = NULL; #if defined( PYSVN_HAS_WC_ADM_PROBE_OPEN3 ) const char *c_norm_path = svn_dirent_internal_style( path.c_str(), pool ); std::string norm_path( c_norm_path ); svn_error_t *error = svn_wc_adm_probe_open3 // ignore deprecation warning - support old Client().info() ( &adm_access, NULL, norm_path.c_str(), false, 0, NULL, NULL, pool ); #else std::string norm_path( svnNormalisedPath( path, pool ) ); svn_error_t *error = svn_wc_adm_probe_open( &adm_access, NULL, norm_path.c_str(), false, false, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); permission.allowOtherThreads(); error = svn_wc_entry // ignore deprecation warning - support old Client().info() ( &entry, norm_path.c_str(), adm_access, false, pool ); permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); return Py::None(); // needed to remove warning about return value missing } if( entry == NULL ) return Py::None(); return toObject( *entry, pool, m_wrapper_entry ); } #if defined( PYSVN_HAS_CLIENT_INFO3 ) extern "C" svn_error_t *info_receiver_c2( void *baton_, const char *abspath_or_url, const svn_client_info2_t *info, apr_pool_t *pool ); class InfoReceiveBaton { public: InfoReceiveBaton ( PythonAllowThreads *permission, SvnPool &pool, Py::List &info_list, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ) : m_permission( permission ) , m_pool( pool ) , m_info_list( info_list ) , m_wrapper_info( wrapper_info ) , m_wrapper_lock( wrapper_lock ) , m_wrapper_wc_info( wrapper_wc_info ) {} ~InfoReceiveBaton() {} svn_client_info_receiver2_t callback() { return &info_receiver_c2; } void *baton() { return static_cast( this ); } static InfoReceiveBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; SvnPool &m_pool; Py::List &m_info_list; const DictWrapper &m_wrapper_info; const DictWrapper &m_wrapper_lock; const DictWrapper &m_wrapper_wc_info; }; extern "C" svn_error_t *info_receiver_c2( void *baton_, const char *abspath_or_url, const svn_client_info2_t *info, apr_pool_t * ) { InfoReceiveBaton *baton = InfoReceiveBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); if( abspath_or_url != NULL ) { std::string std_path( abspath_or_url ); if( std_path.empty() ) { std_path = "."; } Py::String py_path( utf8_string_or_none( std_path ) ); Py::Tuple py_pair( 2 ); py_pair[0] = py_path; py_pair[1] = toObject( *info, baton->m_pool, baton->m_wrapper_info, baton->m_wrapper_lock, baton->m_wrapper_wc_info ); baton->m_info_list.append( py_pair ); } return SVN_NO_ERROR; } #elif defined( PYSVN_HAS_CLIENT_INFO ) extern "C" svn_error_t *info_receiver_c( void *baton_, const char *path, const svn_info_t *info, apr_pool_t *pool ); class InfoReceiveBaton { public: InfoReceiveBaton ( PythonAllowThreads *permission, SvnPool &, Py::List &info_list, const DictWrapper &wrapper_info, const DictWrapper &wrapper_lock, const DictWrapper &wrapper_wc_info ) : m_permission( permission ) , m_info_list( info_list ) , m_wrapper_info( wrapper_info ) , m_wrapper_lock( wrapper_lock ) , m_wrapper_wc_info( wrapper_wc_info ) {} ~InfoReceiveBaton() {} svn_info_receiver_t callback() { return &info_receiver_c; } void *baton() { return static_cast( this ); } static InfoReceiveBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; Py::List &m_info_list; const DictWrapper &m_wrapper_info; const DictWrapper &m_wrapper_lock; const DictWrapper &m_wrapper_wc_info; }; extern "C" svn_error_t *info_receiver_c( void *baton_, const char *path, const svn_info_t *info, apr_pool_t *pool ) { InfoReceiveBaton *baton = InfoReceiveBaton::castBaton( baton_ ); PythonDisallowThreads callback_permission( baton->m_permission ); if( path != NULL ) { std::string std_path( path ); if( std_path.empty() ) { std_path = "."; } Py::String py_path( utf8_string_or_none( std_path ) ); Py::Tuple py_pair( 2 ); py_pair[0] = py_path; py_pair[1] = toObject( *info, baton->m_wrapper_info, baton->m_wrapper_lock, baton->m_wrapper_wc_info ); baton->m_info_list.append( py_pair ); } return SVN_NO_ERROR; } #endif #if defined( PYSVN_HAS_CLIENT_INFO ) Py::Object pysvn_client::cmd_info2( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision }, { false, name_peg_revision}, { false, name_recurse }, #if defined( PYSVN_HAS_CLIENT_INFO2 ) { false, name_depth }, { false, name_changelists }, #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) { false, name_fetch_excluded }, { false, name_fetch_actual_only }, #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) { false, name_include_externals }, #endif { false, NULL } }; FunctionArguments args( "info2", args_desc, a_args, a_kws ); args.check(); std::string path( args.getUtf8String( name_url_or_path ) ); svn_opt_revision_kind kind = svn_opt_revision_unspecified; if( is_svn_url( path ) ) kind = svn_opt_revision_head; svn_opt_revision_t revision = args.getRevision( name_revision, kind ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, revision ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_INFO2 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_empty ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) bool fetch_excluded = args.getBoolean( name_fetch_excluded, false ); bool fetch_actual_only = args.getBoolean( name_fetch_actual_only, true ); #endif #if defined( PYSVN_HAS_CLIENT_INFO3 ) bool include_externals = args.getBoolean( name_include_externals, false ); #endif bool is_url = is_svn_url( path ); revisionKindCompatibleCheck( is_url, peg_revision, name_peg_revision, name_url_or_path ); revisionKindCompatibleCheck( is_url, revision, name_revision, name_url_or_path ); Py::List info_list; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); InfoReceiveBaton info_baton( &permission, pool, info_list, m_wrapper_info, m_wrapper_lock, m_wrapper_wc_info ); #if defined( PYSVN_HAS_CLIENT_INFO3 ) svn_error_t *error = SVN_NO_ERROR; const char *abspath_or_url = NULL; if( !svn_path_is_url( norm_path.c_str() ) && !svn_dirent_is_absolute( norm_path.c_str() ) ) { error = svn_dirent_get_absolute( &abspath_or_url, norm_path.c_str(), pool ); } else { abspath_or_url = norm_path.c_str(); } #endif #if defined( PYSVN_HAS_CLIENT_INFO4 ) if( error == SVN_NO_ERROR ) { error = svn_client_info4 ( abspath_or_url, &peg_revision, &revision, depth, fetch_excluded, fetch_actual_only, include_externals, changelists, info_baton.callback(), info_baton.baton(), m_context, pool ); } #elif defined( PYSVN_HAS_CLIENT_INFO3 ) if( error == SVN_NO_ERROR ) { error = svn_client_info3 ( abspath_or_url, &peg_revision, &revision, depth, fetch_excluded, fetch_actual_only, changelists, info_baton.callback(), info_baton.baton(), m_context, pool ); } #elif defined( PYSVN_HAS_CLIENT_INFO2 ) svn_error_t *error = svn_client_info2 ( norm_path.c_str(), &peg_revision, &revision, info_baton.callback(), info_baton.baton(), depth, changelists, m_context, pool ); #else svn_error_t *error = svn_client_info ( norm_path.c_str(), &peg_revision, &revision, info_baton.callback(), info_baton.baton(), recurse, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return info_list; } #endif #if defined( PYSVN_HAS_CLIENT_LOG4 ) extern "C" svn_error_t *log4Receiver ( void *baton_, svn_log_entry_t *log_entry, apr_pool_t *pool ); class Log4Baton { public: Log4Baton( PythonAllowThreads *permission, SvnPool &pool, Py::List &log_list ) : m_permission( permission ) , m_pool( pool ) , m_now( apr_time_now() ) , m_wrapper_log( NULL ) , m_wrapper_log_changed_path( NULL ) , m_log_list( log_list ) , m_has_children( false ) {} ~Log4Baton() {} svn_log_entry_receiver_t callback() { return &log4Receiver; } void *baton() { return static_cast< void * >( this ); } static Log4Baton *castBaton( void *baton_ ) { return static_cast( baton_ ); } PythonAllowThreads *m_permission; SvnPool &m_pool; apr_time_t m_now; DictWrapper *m_wrapper_log; DictWrapper *m_wrapper_log_changed_path; Py::List &m_log_list; bool m_has_children; }; extern "C" svn_error_t *log4Receiver ( void *baton_, svn_log_entry_t *log_entry, apr_pool_t *pool ) { Log4Baton *baton = Log4Baton::castBaton( baton_ ); if( log_entry->revision == 0 ) { // skip this blank entry // as the svn log command does return NULL; } PythonDisallowThreads callback_permission( baton->m_permission ); Py::Dict entry_dict; Py::Object revprops; if( log_entry->revprops == NULL ) { revprops = Py::None(); } else { revprops = propsToObject( log_entry->revprops, baton->m_pool ); Py::Dict revprops_dict; revprops_dict = revprops; if( revprops_dict.hasKey( "svn:date" ) ) { Py::String date( revprops_dict[ "svn:date" ] ); Py::Object int_date = toObject( convertStringToTime( date.as_std_string( name_utf8 ), baton->m_now, baton->m_pool ) ); revprops_dict[ "svn:date" ] = int_date; entry_dict[ name_date ] = int_date; } if( revprops_dict.hasKey( "svn:author" ) ) { entry_dict[ name_author ] = revprops_dict[ "svn:author" ]; } if( revprops_dict.hasKey( "svn:log" ) ) { Py::String message( revprops_dict[ "svn:log" ] ); revprops_dict[ "svn:log" ] = message; entry_dict[ name_message ] = message; } } entry_dict[ name_revprops ] = revprops; entry_dict[ name_revision ] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, log_entry->revision ) ); Py::List changed_paths_list; #if defined( PYSVN_HAS_CLIENT_LOG5 ) if( log_entry->changed_paths2 != NULL ) { for( apr_hash_index_t *hi = apr_hash_first( pool, log_entry->changed_paths2 ); hi != NULL; hi = apr_hash_next( hi ) ) { Py::Dict changed_entry_dict; char *path = NULL; void *val = NULL; apr_hash_this( hi, (const void **) &path, NULL, &val ); svn_log_changed_path_t *log_item = reinterpret_cast (val); changed_entry_dict[ name_path ] = Py::String( path ); char action[2]; action[0] = log_item->action; action[1] = 0; changed_entry_dict[ name_action ] = Py::String( action ); changed_entry_dict[ name_copyfrom_path ] = utf8_string_or_none( log_item->copyfrom_path ); if( SVN_IS_VALID_REVNUM( log_item->copyfrom_rev ) ) changed_entry_dict[ name_copyfrom_revision ] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, log_item->copyfrom_rev ) ); else changed_entry_dict[ name_copyfrom_revision ] = Py::None(); changed_paths_list.append( baton->m_wrapper_log_changed_path->wrapDict( changed_entry_dict ) ); } } #else if( log_entry->changed_paths != NULL ) { for( apr_hash_index_t *hi = apr_hash_first( pool, log_entry->changed_paths ); hi != NULL; hi = apr_hash_next( hi ) ) { Py::Dict changed_entry_dict; char *path = NULL; void *val = NULL; apr_hash_this( hi, (const void **) &path, NULL, &val ); svn_log_changed_path_t *log_item = reinterpret_cast (val); changed_entry_dict[ name_path ] = Py::String( path ); char action[2]; action[0] = log_item->action; action[1] = 0; changed_entry_dict[ name_action ] = Py::String( action ); changed_entry_dict[ name_copyfrom_path ] = utf8_string_or_none( log_item->copyfrom_path ); if( SVN_IS_VALID_REVNUM( log_item->copyfrom_rev ) ) changed_entry_dict[ name_copyfrom_revision ] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, log_item->copyfrom_rev ) ); else changed_entry_dict[ name_copyfrom_revision ] = Py::None(); changed_paths_list.append( baton->m_wrapper_log_changed_path->wrapDict( changed_entry_dict ) ); } } #endif entry_dict[ name_changed_paths ] = changed_paths_list; entry_dict[ "has_children" ] = Py::Int( log_entry->has_children != 0 ? 1 : 0 ); baton->m_log_list.append( baton->m_wrapper_log->wrapDict( entry_dict ) ); return NULL; } // PYSVN_HAS_CLIENT_LOG4 version Py::Object pysvn_client::cmd_log( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision_start }, { false, name_revision_end }, { false, name_discover_changed_paths }, { false, name_strict_node_history }, { false, name_limit }, { false, name_peg_revision }, { false, name_include_merged_revisions }, { false, name_revprops }, { false, NULL } }; FunctionArguments args( "log", args_desc, a_args, a_kws ); args.check(); SvnPool pool( m_context ); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_head ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_number ); bool discover_changed_paths = args.getBoolean( name_discover_changed_paths, false ); bool strict_node_history = args.getBoolean( name_strict_node_history, true ); int limit = args.getInteger( name_limit, 0 ); svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, svn_opt_revision_unspecified ); svn_boolean_t include_merged_revisions = args.getBoolean( name_include_merged_revisions, false ); apr_array_header_t *revprops = NULL; if( args.hasArg( name_revprops ) ) { Py::Object py_revprop = args.getArg( name_revprops ); if( !py_revprop.isNone() ) { revprops = arrayOfStringsFromListOfStrings( py_revprop, pool ); } } Py::Object url_or_path_obj = args.getArg( name_url_or_path ); Py::List url_or_path_list; if( url_or_path_obj.isList() ) { url_or_path_list = url_or_path_obj; } else { Py::List py_list; py_list.append( url_or_path_obj ); url_or_path_list = py_list; } for( size_t i=0; i( apr_palloc( pool, sizeof(*range) ) ); range->start = revision_start; range->end = revision_end; APR_ARRAY_PUSH( revision_ranges, svn_opt_revision_range_t * ) = range; svn_error_t *error = svn_client_log5 ( targets, &peg_revision, revision_ranges, limit, discover_changed_paths, strict_node_history, include_merged_revisions, revprops, baton.callback(), baton.baton(), m_context, pool ); #else svn_error_t *error = svn_client_log4 ( targets, &peg_revision, &revision_start, &revision_end, limit, discover_changed_paths, strict_node_history, include_merged_revisions, revprops, baton.callback(), baton.baton(), m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } return log_list; } #else class LogChangePathInfo { public: LogChangePathInfo( const char *path, svn_log_changed_path_t *info ) : m_path( path ) , m_action( info->action ) , m_copy_from_path( info->copyfrom_path != NULL ? info->copyfrom_path : "" ) , m_copy_from_revision( info->copyfrom_rev ) { } LogChangePathInfo( const LogChangePathInfo &other ) : m_path( other.m_path ) , m_action( other.m_action ) , m_copy_from_path( other.m_copy_from_path ) , m_copy_from_revision( other.m_copy_from_revision ) { } std::string m_path; char m_action; std::string m_copy_from_path; svn_revnum_t m_copy_from_revision; }; class LogEntryInfo { public: LogEntryInfo ( svn_revnum_t revision, const char *author, const char *date, const char *message ) : m_revision( revision ) , m_author( author ) , m_date( date ) , m_message( message ) , m_changed_paths() { } ~LogEntryInfo() { } LogEntryInfo( const LogEntryInfo &other ) : m_revision( other.m_revision ) , m_author( other.m_author ) , m_date( other.m_date ) , m_message( other.m_message ) , m_changed_paths( other.m_changed_paths ) { } svn_revnum_t m_revision; std::string m_author; std::string m_date; std::string m_message; std::list m_changed_paths; }; static svn_error_t *logReceiver ( void *baton, apr_hash_t *changedPaths, svn_revnum_t rev, const char *author, const char *date, const char *msg, apr_pool_t *pool ) { if( rev == 0 ) { // skip this blank entry // as the svn log command does return NULL; } std::list *entries = (std::list *)baton; if( author == NULL ) author = ""; if( date == NULL ) date = ""; if( msg == NULL ) msg = ""; entries->push_back( LogEntryInfo( rev, author, date, msg ) ); if( changedPaths != NULL ) { LogEntryInfo &entry = entries->back(); for( apr_hash_index_t *hi = apr_hash_first( pool, changedPaths ); hi != NULL; hi = apr_hash_next( hi ) ) { char *path = NULL; void *val = NULL; apr_hash_this( hi, (const void **) &path, NULL, &val ); svn_log_changed_path_t *log_item = reinterpret_cast (val); entry.m_changed_paths.push_back( LogChangePathInfo( path, log_item ) ); } } return NULL; } // PYSVN_HAS_CLIENT_LOG, PYSVN_HAS_CLIENT_LOG2, PYSVN_HAS_CLIENT_LOG3 version Py::Object pysvn_client::cmd_log( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_url_or_path }, { false, name_revision_start }, { false, name_revision_end }, { false, name_discover_changed_paths }, { false, name_strict_node_history }, #if defined( PYSVN_HAS_CLIENT_LOG2 ) || defined( PYSVN_HAS_CLIENT_LOG3 ) { false, name_limit }, #endif #if defined( PYSVN_HAS_CLIENT_LOG3 ) { false, name_peg_revision }, #endif #if defined( PYSVN_HAS_CLIENT_LOG4 ) { false, name_include_merged_revisions }, { false, name_revprops }, #endif { false, NULL } }; FunctionArguments args( "log", args_desc, a_args, a_kws ); args.check(); svn_opt_revision_t revision_start = args.getRevision( name_revision_start, svn_opt_revision_head ); svn_opt_revision_t revision_end = args.getRevision( name_revision_end, svn_opt_revision_number ); bool discover_changed_paths = args.getBoolean( name_discover_changed_paths, false ); bool strict_node_history = args.getBoolean( name_strict_node_history, true ); int limit = args.getInteger( name_limit, 0 ); #if defined( PYSVN_HAS_CLIENT_LOG3 ) svn_opt_revision_t peg_revision = args.getRevision( name_peg_revision, svn_opt_revision_unspecified ); #endif #if defined( PYSVN_HAS_CLIENT_LOG4 ) svn_boolean_t include_merged_revisions = args.getBoolean( name_include_merged_revisions, false ); apr_array_header_t *revprops = NULL; Py::Object py_revprop = args.getArg( name_revprops ); if( py_revprop is not None ) { revprops = arrayOfStringsFromListOfStrings( py_revprop. pool ); } #endif Py::Object url_or_path_obj = args.getArg( name_url_or_path ); Py::List url_or_path_list; if( url_or_path_obj.isList() ) { url_or_path_list = url_or_path_obj; } else { Py::List py_list; py_list.append( url_or_path_obj ); url_or_path_list = py_list; } for( size_t i=0; i all_entries; #endif try { checkThreadPermission(); PythonAllowThreads permission( m_context ); #if defined( PYSVN_HAS_CLIENT_LOG4 ) svn_error_t *error = svn_client_log4 ( targets, &peg_revision, &revision_start, &revision_end, limit, discover_changed_paths, strict_node_history, include_merged_revisions, revprops, logReceiver, &all_entries, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_LOG3 ) svn_error_t *error = svn_client_log3 ( targets, &peg_revision, &revision_start, &revision_end, limit, discover_changed_paths, strict_node_history, logReceiver, &all_entries, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_LOG2 ) svn_error_t *error = svn_client_log2 ( targets, &revision_start, &revision_end, limit, discover_changed_paths, strict_node_history, logReceiver, &all_entries, m_context, pool ); #else svn_error_t *error = svn_client_log ( targets, &revision_start, &revision_end, discover_changed_paths, strict_node_history, logReceiver, &all_entries, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } apr_time_t now = apr_time_now(); // convert the entries into python objects Py::List entries_list; std::list::const_iterator entry_it = all_entries.begin(); while( entry_it != all_entries.end() ) { const LogEntryInfo &entry = *entry_it; ++entry_it; Py::Dict entry_dict; entry_dict[name_author] = Py::String( entry.m_author, name_utf8 ); entry_dict[name_date] = toObject( convertStringToTime( entry.m_date, now, pool ) ); entry_dict[name_message] = Py::String( entry.m_message, name_utf8 ); entry_dict[name_revision] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, entry.m_revision ) ); Py::List changed_paths_list; std::list::const_iterator changed_paths_it = entry.m_changed_paths.begin(); while( changed_paths_it != entry.m_changed_paths.end() ) { const LogChangePathInfo &change_entry = *changed_paths_it; ++changed_paths_it; Py::Dict changed_entry_dict; changed_entry_dict[name_path] = Py::String( change_entry.m_path, name_utf8 ); changed_entry_dict[name_action] = Py::String( &change_entry.m_action, 1 ); changed_entry_dict[name_copyfrom_path] = utf8_string_or_none( change_entry.m_copy_from_path ); if( SVN_IS_VALID_REVNUM( change_entry.m_copy_from_revision ) ) changed_entry_dict[name_copyfrom_revision] = Py::asObject( new pysvn_revision( svn_opt_revision_number, 0, change_entry.m_copy_from_revision ) ); else changed_entry_dict[name_copyfrom_revision] = Py::None(); changed_paths_list.append( m_wrapper_log_changed_path.wrapDict( changed_entry_dict ) ); } entry_dict[name_changed_paths] = changed_paths_list; entries_list.append( m_wrapper_log.wrapDict( entry_dict ) ); } return entries_list; } #endif #if defined( PYSVN_HAS_CLIENT_STATUS5 ) static svn_error_t *status5EntriesFunc ( void *baton, const char *path, const svn_client_status_t *status, apr_pool_t *scratch_pool ); class Status2EntriesBaton { public: Status2EntriesBaton( SvnPool &pool ) : m_pool( pool ) , m_hash( apr_hash_make( pool ) ) {} ~Status2EntriesBaton() {} svn_client_status_func_t callback() { return &status5EntriesFunc; } void *baton() { return static_cast< void * >( this ); } static Status2EntriesBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } SvnPool &m_pool; apr_hash_t *m_hash; }; static svn_error_t *status5EntriesFunc ( void *baton, const char *path, const svn_client_status_t *status, apr_pool_t *scratch_pool ) { Status2EntriesBaton *seb = Status2EntriesBaton::castBaton( baton ); path = apr_pstrdup( seb->m_pool, path ); svn_client_status_t *stat = svn_client_status_dup( status, seb->m_pool ); apr_hash_set( seb->m_hash, path, APR_HASH_KEY_STRING, stat ); return SVN_NO_ERROR; } Py::Object pysvn_client::cmd_status2( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, { false, name_get_all }, { false, name_update }, { false, name_ignore }, { false, name_ignore_externals }, { false, name_depth }, { false, name_changelists }, { false, name_depth_as_sticky }, #if defined( PYSVN_HAS_CLIENT_STATUS6 ) { false, name_check_out_of_date }, { false, name_check_working_copy }, #endif { false, NULL } }; FunctionArguments args( "status2", args_desc, a_args, a_kws ); args.check(); Py::String path( args.getUtf8String( name_path ) ); SvnPool pool( m_context ); apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_immediates ); bool get_all = args.getBoolean( name_get_all, true ); bool update = args.getBoolean( name_update, false ); bool ignore = args.getBoolean( name_ignore, false ); bool ignore_externals = args.getBoolean( name_ignore_externals, false ); bool depth_as_sticky = args.getBoolean( name_depth_as_sticky, true ); #if defined( PYSVN_HAS_CLIENT_STATUS6 ) bool check_out_of_date = args.getBoolean( name_check_out_of_date, update ); bool check_working_copy = args.getBoolean( name_check_working_copy, true ); #endif Status2EntriesBaton baton( pool ); Py::List entries_list; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_revnum_t revnum; svn_opt_revision_t rev = { svn_opt_revision_head, {0} }; const char *abspath_or_url = NULL; svn_error_t *error = svn_dirent_get_absolute( &abspath_or_url, norm_path.c_str(), pool ); #if defined( PYSVN_HAS_CLIENT_STATUS6 ) if( error == NULL ) { error = svn_client_status6 ( &revnum, // revnum m_context, abspath_or_url, // path &rev, depth, get_all, check_out_of_date, check_working_copy, !ignore, ignore_externals, depth_as_sticky, changelists, baton.callback(), baton.baton(), pool ); } #else if( error == NULL ) { error = svn_client_status5 ( &revnum, // revnum m_context, abspath_or_url, // path &rev, depth, get_all, update, !ignore, ignore_externals, depth_as_sticky, changelists, baton.callback(), baton.baton(), pool ); } #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // Loop over array, returning each name/status-structure for( apr_hash_index_t *hi = apr_hash_first( pool, baton.m_hash ); hi != NULL; hi = apr_hash_next( hi ) ) { const void *key; void *val; apr_hash_this( hi, &key, NULL, &val ); svn_client_status_t *status = static_cast( val ); entries_list.append( toObject( Py::String( osNormalisedPath( (const char *)key, pool ), "UTF-8" ), *status, pool, m_wrapper_status2, m_wrapper_lock ) ); } entries_list.sort(); return entries_list; } #endif #if defined( PYSVN_HAS_CLIENT_STATUS4 ) static svn_error_t *status4EntriesFunc ( void *baton, const char *path, svn_wc_status2_t *status, apr_pool_t *pool ); #elif defined( PYSVN_HAS_CLIENT_STATUS2 ) static void status2EntriesFunc ( void *baton, const char *path, svn_wc_status2_t *status ); #else static void status1EntriesFunc ( void *baton, const char *path, svn_wc_status_t *status ); #endif class StatusEntriesBaton { public: StatusEntriesBaton( SvnPool &pool ) : m_pool( pool ) , m_hash( apr_hash_make( pool ) ) {} ~StatusEntriesBaton() {} #if defined( PYSVN_HAS_CLIENT_STATUS4 ) svn_wc_status_func3_t callback() { return &status4EntriesFunc; } #elif defined( PYSVN_HAS_CLIENT_STATUS2 ) svn_wc_status_func2_t callback() { return &status2EntriesFunc; } #else svn_wc_status_func_t callback() { return &status1EntriesFunc; } #endif void *baton() { return static_cast< void * >( this ); } static StatusEntriesBaton *castBaton( void *baton_ ) { return static_cast( baton_ ); } SvnPool &m_pool; apr_hash_t *m_hash; }; #if defined( PYSVN_HAS_CLIENT_STATUS4 ) static svn_error_t *status4EntriesFunc ( void *baton, const char *path, svn_wc_status2_t *status, apr_pool_t *pool ) { StatusEntriesBaton *seb = StatusEntriesBaton::castBaton( baton ); path = apr_pstrdup( seb->m_pool, path ); svn_wc_status2_t *stat = svn_wc_dup_status2( status, seb->m_pool ); // ignore deprecation needed for Client().status() apr_hash_set( seb->m_hash, path, APR_HASH_KEY_STRING, stat ); return SVN_NO_ERROR; } #elif defined( PYSVN_HAS_CLIENT_STATUS2 ) static void status2EntriesFunc ( void *baton, const char *path, svn_wc_status2_t *status ) { StatusEntriesBaton *seb = StatusEntriesBaton::castBaton( baton ); path = apr_pstrdup( seb->m_pool, path ); svn_wc_status2_t *stat = svn_wc_dup_status2( status, seb->m_pool ); apr_hash_set( seb->m_hash, path, APR_HASH_KEY_STRING, stat ); } #else static void status1EntriesFunc ( void *baton, const char *path, svn_wc_status_t *status ) { StatusEntriesBaton *seb = StatusEntriesBaton::castBaton( baton ); path = apr_pstrdup( seb->m_pool, path ); svn_wc_status2_t *stat = svn_wc_dup_status( status, seb->m_pool ); apr_hash_set( seb->m_hash, path, APR_HASH_KEY_STRING, stat ); } #endif Py::Object pysvn_client::cmd_status( const Py::Tuple &a_args, const Py::Dict &a_kws ) { static argument_description args_desc[] = { { true, name_path }, { false, name_recurse }, { false, name_get_all }, { false, name_update }, { false, name_ignore }, #if defined( PYSVN_HAS_CLIENT_STATUS2 ) { false, name_ignore_externals }, #endif #if defined( PYSVN_HAS_CLIENT_STATUS3 ) { false, name_depth }, { false, name_changelists }, #endif { false, NULL } }; FunctionArguments args( "status", args_desc, a_args, a_kws ); args.check(); Py::String path( args.getUtf8String( name_path ) ); SvnPool pool( m_context ); #if defined( PYSVN_HAS_CLIENT_STATUS3 ) apr_array_header_t *changelists = NULL; if( args.hasArg( name_changelists ) ) { changelists = arrayOfStringsFromListOfStrings( args.getArg( name_changelists ), pool ); } svn_depth_t depth = args.getDepth( name_depth, name_recurse, svn_depth_infinity, svn_depth_infinity, svn_depth_immediates ); #else bool recurse = args.getBoolean( name_recurse, true ); #endif bool get_all = args.getBoolean( name_get_all, true ); bool update = args.getBoolean( name_update, false ); bool ignore = args.getBoolean( name_ignore, false ); #if defined( PYSVN_HAS_CLIENT_STATUS2 ) bool ignore_externals = args.getBoolean( name_ignore_externals, false ); #endif StatusEntriesBaton baton( pool ); Py::List entries_list; try { std::string norm_path( svnNormalisedIfPath( path, pool ) ); checkThreadPermission(); PythonAllowThreads permission( m_context ); svn_revnum_t revnum; svn_opt_revision_t rev = { svn_opt_revision_head, {0} }; #if defined( PYSVN_HAS_CLIENT_STATUS4 ) svn_error_t *error = svn_client_status4 // ignore deprecation warning - support Client().status() ( &revnum, // revnum norm_path.c_str(), // path &rev, baton.callback(), baton.baton(), depth, get_all, update, !ignore, ignore_externals, changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_STATUS3 ) svn_error_t *error = svn_client_status3 ( &revnum, // revnum norm_path.c_str(), // path &rev, baton.callback(), baton.baton(), depth, get_all, update, !ignore, ignore_externals, changelists, m_context, pool ); #elif defined( PYSVN_HAS_CLIENT_STATUS2 ) svn_error_t *error = svn_client_status2 ( &revnum, // revnum norm_path.c_str(), // path &rev, baton.callback(), baton.baton(), recurse, get_all, update, !ignore, ignore_externals, m_context, pool ); #else svn_error_t *error = svn_client_status ( &revnum, // revnum norm_path.c_str(), // path &rev, baton.callback(), baton.baton(), recurse, get_all, update, !ignore, m_context, pool ); #endif permission.allowThisThread(); if( error != NULL ) throw SvnException( error ); } catch( SvnException &e ) { // use callback error over ClientException m_context.checkForError( m_module.client_error ); throw_client_error( e ); } // Loop over array, returning each name/status-structure for( apr_hash_index_t *hi = apr_hash_first( pool, baton.m_hash ); hi != NULL; hi = apr_hash_next( hi ) ) { const void *key; void *val; apr_hash_this( hi, &key, NULL, &val ); pysvn_wc_status_t *status = static_cast( val ); entries_list.append( toObject( Py::String( osNormalisedPath( (const char *)key, pool ), "UTF-8" ), *status, pool, m_wrapper_status, m_wrapper_entry, m_wrapper_lock ) ); } entries_list.sort(); return entries_list; } pysvn-1.9.22/Source/generate_svn_error_codes/generate_svn_error_codes.cpp000644 000765 000024 00000000330 11655466510 027333 0ustar00barrystaff000000 000000 #include #include #include "svn_error_codes.h" int main( int argc, char **argv ) { printf( "\n" ); printf( "class svn_err:\n" ); #include "generate_svn_error_codes.hpp" return 0; } pysvn-1.9.22/Source/generate_svn_error_codes/create_svn_error_codes_hpp.py000644 000765 000024 00000001021 11065126507 027511 0ustar00barrystaff000000 000000 # # create_svn_error_codes_hpp.py # import sys import os svn_include = sys.argv[1] f = open( 'generate_svn_error_codes.hpp', 'w' ) svn_err_file = open( os.path.join( svn_include, 'svn_error_codes.h' ), 'r' ) emit = False for line in svn_err_file: if line == 'SVN_ERROR_START\n': emit = True if emit and 'SVN_ERRDEF(' in line: symbol = line.split( 'SVN_ERRDEF(' )[1].split( ',' )[0] f.write( ' printf( " %s = %%d\\n", %s );\n' % (symbol.lower()[len('SVN_ERR_'):], symbol) ) f.close() pysvn-1.9.22/Source/pysvn/__init__.py.template000644 000765 000024 00000010523 13340552624 021615 0ustar00barrystaff000000 000000 ''' ==================================================================== Copyright (c) 2003-2009 Barry A Scott. All rights reserved. This software is licensed as described in the file LICENSE.txt, which you should have received as part of this distribution. ==================================================================== ''' import sys try: import UserDict user_dict_base = UserDict.IterableUserDict except ImportError: import collections user_dict_base = collections.UserDict class PysvnDictBase(user_dict_base): def __init__( self, value_dict, name='' ): user_dict_base.__init__( self, value_dict ) self.__name = name if self.__name is None: print( '%s given None as name' % (self.__class__.__name__,) ) def __getattr__( self, name ): if name in self.data: return self.data[ name ] raise AttributeError( "%s instance has no attribute '%s'" % (self.__class__.__name__, name) ) def _key( self ): return self.__name # make orderable for python3 def __lt__( self, other ): return self._key() < other._key() def __repr__( self ): return '<%s %s>' % (self.__class__.__name__, repr(self.__name)) class PysvnDirent(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'name', None ) ) class PysvnList(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'path', None ) ) class PysvnEntry(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'name', None ) ) class PysvnInfo(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) class PysvnLock(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) class PysvnLog(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) class PysvnLogChangedPath(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) class PysvnWcInfo(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) class PysvnStatus2(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'path', None ) ) class PysvnStatus(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'path', None ) ) class PysvnDiffSummary(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict, value_dict.get( 'path', None ) ) class PysvnCommitInfo(PysvnDictBase): def __init__( self, value_dict ): PysvnDictBase.__init__( self, value_dict ) # An indication that you are interested in the @c kind field SVN_DIRENT_KIND = 0x00001 # An indication that you are interested in the @c size field SVN_DIRENT_SIZE = 0x00002 # An indication that you are interested in the @c has_props field SVN_DIRENT_HAS_PROPS = 0x00004 # An indication that you are interested in the @c created_rev field SVN_DIRENT_CREATED_REV = 0x00008 # An indication that you are interested in the @c time field SVN_DIRENT_TIME = 0x00010 # An indication that you are interested in the @c last_author field SVN_DIRENT_LAST_AUTHOR = 0x00020 # A combination of all the dirent fields SVN_DIRENT_ALL = 0xffffffff try: ### IMPORT BLOCK BEGIN raise ImportError( 'pysvn __init__.py has not been created by the build system correctly' ) ### IMPORT BLOCK END for key, value in _pysvn.__dict__.items(): if not key.startswith( '__' ): globals()[ key ] = value except ImportError as e: # check for common installation errors that show up as ImportError if ': undefined symbol:' in str(e): raise ImportError( 'pysvn was built against newer (svn, apr, etc.) libraries then the ones installed on this system. %s' % str(e) ) else: raise def Client( config_dir='' ): return _pysvn._Client( config_dir, result_wrappers=globals() ) def Transaction( repos_path, transaction_name, is_revision=False ): return _pysvn._Transaction( repos_path, transaction_name, is_revision, result_wrappers=globals() ) pysvn-1.9.22/Patches/test_proplist.sh000755 000765 000024 00000000371 12617124047 020114 0ustar00barrystaff000000 000000 #!/bin/bash export SVN_INC=/usr/include/subversion-1 export SVN_LIB=/usr/lib if [ -e /usr/include/apr-0 ] then export APR_INC=/usr/include/apr-0 else export APR_INC=/usr/include/apache2 fi export APR_LIB=/usr/lib make -f test_proplist.mak pysvn-1.9.22/Patches/test_proplist.cpp000644 000765 000024 00000004265 11654776730 020303 0ustar00barrystaff000000 000000 #include #include #include #include "svn_config.h" #include "svn_pools.h" #include "svn_client.h" static int elapse_time(); int main( int argc, char **argv ) { if( argc < 4 ) { std::cout << "Usage: " << argv[0] << " " << std::endl; std::cout << " " << argv[0] << " readme.txt 50 0" << std::endl; std::cout << " " << argv[0] << " ../Sources 1 1" << std::endl; return 1; } apr_initialize(); apr_pool_initialize(); apr_pool_t *m_pool; apr_pool_create( &m_pool, NULL ); svn_config_ensure( "", m_pool ); svn_client_ctx_t m_context; memset( &m_context, 0, sizeof( m_context ) ); // get the config based on the config dir passed in svn_config_get_config( &m_context.config, "", m_pool ); apr_pool_t *pool = svn_pool_create( NULL ); svn_opt_revision_t revision; revision.kind = svn_opt_revision_working; char *path = argv[1]; svn_boolean_t recurse = atoi( argv[3] ); int t0 = elapse_time(); int max_calls = atoi( argv[2] ); int i; for( i=0; i # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT ** # TARGTYPE "Win32 (x86) Console Application" 0x0103 CFG=test_proplist - Win32 Debug !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run !MESSAGE !MESSAGE NMAKE /f "test_proplist.mak". !MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: !MESSAGE !MESSAGE NMAKE /f "test_proplist.mak" CFG="test_proplist - Win32 Debug" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "test_proplist - Win32 Release" (based on "Win32 (x86) Console Application") !MESSAGE "test_proplist - Win32 Debug" (based on "Win32 (x86) Console Application") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe RSC=rc.exe !IF "$(CFG)" == "test_proplist - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "Release" # PROP BASE Intermediate_Dir "Release" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "Release" # PROP Intermediate_Dir "Release" # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /GX /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /O2/D "WIN32" /c # ADD CPP /nologo /MD /W3 /GX /O2 /I "$(APR)/apr/include" /I "$(APR)/apr-util/include" /I "$(APR)/apr-util/xml/expat/lib" /I "$(SUBVERSION)/subversion/include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c # ADD BASE RSC /l 0x809 /d "NDEBUG" # ADD RSC /l 0x809 /d "NDEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Rpcrt4.lib Mswsock.lib $(SUBVERSION)\Release\subversion\libsvn_client\libsvn_client-1.lib $(SUBVERSION)\Release\subversion\libsvn_delta\libsvn_delta-1.lib $(SUBVERSION)\Release\subversion\libsvn_diff\libsvn_diff-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs\libsvn_fs-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs_base\libsvn_fs_base-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs_fs\libsvn_fs_fs-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra\libsvn_ra-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_dav\libsvn_ra_dav-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_local\libsvn_ra_local-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_svn\libsvn_ra_svn-1.lib $(SUBVERSION)\Release\subversion\libsvn_repos\libsvn_repos-1.lib $(SUBVERSION)\Release\subversion\libsvn_subr\libsvn_subr-1.lib $(SUBVERSION)\Release\subversion\libsvn_wc\libsvn_wc-1.lib $(APR)\apr-iconv\RELEASE\libapriconv.lib $(APR)\apr-util\RELEASE\libaprutil.lib $(APR)\apr-util\xml\expat\lib\LibR\xml.lib $(APR)\apr\RELEASE\libapr.lib $(SUBVERSION)\db4-win\lib\libdb43.lib $(SUBVERSION)\neon\libneon.lib ws2_32.lib /nologo /subsystem:console /pdb:"sept" /machine:I386 /out:"test_proplist.exe" # SUBTRACT LINK32 /pdb:none !ELSEIF "$(CFG)" == "test_proplist - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "Debug" # PROP BASE Intermediate_Dir "Debug" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "Debug" # PROP Intermediate_Dir "Debug" # PROP Target_Dir "" # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c # ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "$(APR)/apr/include" /I "$(APR)/apr-util/include" /I "$(APR)/apr-util/xml/expat/lib" /I "$(SUBVERSION)/subversion/include" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c # ADD BASE RSC /l 0x809 /d "_DEBUG" # ADD RSC /l 0x809 /d "_DEBUG" BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Rpcrt4.lib Mswsock.lib $(SUBVERSION)\Release\subversion\libsvn_client\libsvn_client-1.lib $(SUBVERSION)\Release\subversion\libsvn_delta\libsvn_delta-1.lib $(SUBVERSION)\Release\subversion\libsvn_diff\libsvn_diff-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs\libsvn_fs-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs_base\libsvn_fs_base-1.lib $(SUBVERSION)\Release\subversion\libsvn_fs_fs\libsvn_fs_fs-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra\libsvn_ra-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_dav\libsvn_ra_dav-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_local\libsvn_ra_local-1.lib $(SUBVERSION)\Release\subversion\libsvn_ra_svn\libsvn_ra_svn-1.lib $(SUBVERSION)\Release\subversion\libsvn_repos\libsvn_repos-1.lib $(SUBVERSION)\Release\subversion\libsvn_subr\libsvn_subr-1.lib $(SUBVERSION)\Release\subversion\libsvn_wc\libsvn_wc-1.lib $(APR)\apr-iconv\RELEASE\libapriconv.lib $(APR)\apr-util\RELEASE\libaprutil.lib $(APR)\apr-util\xml\expat\lib\LibR\xml.lib $(APR)\apr\RELEASE\libapr.lib $(SUBVERSION)\db4-win\lib\libdb43.lib $(SUBVERSION)\neon\libneon.lib ws2_32.lib /nologo /subsystem:console /pdb:"sept" /machine:I386 /out:"test_proplist.exe" # SUBTRACT LINK32 /pdb:none !ENDIF # Begin Target # Name "test_proplist - Win32 Release" # Name "test_proplist - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" # Begin Source File SOURCE=.\test_proplist.cpp # End Source File # End Group # Begin Group "Header Files" # PROP Default_Filter "h;hpp;hxx;hm;inl" # End Group # Begin Group "Resource Files" # PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" # End Group # End Target # End Project pysvn-1.9.22/Patches/test_proplist.dsw000644 000765 000024 00000001045 10140664312 020264 0ustar00barrystaff000000 000000 Microsoft Developer Studio Workspace File, Format Version 6.00 # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! ############################################################################### Project: "test_proplist"=.\test_proplist.dsp - Package Owner=<4> Package=<5> {{{ }}} Package=<4> {{{ }}} ############################################################################### Global: Package=<5> {{{ }}} Package=<3> {{{ }}} ###############################################################################