[Python-modules-commits] [pysvn] 01/07: Import pysvn_1.8.0.orig.tar.gz
Josué Ortega
noahfx-guest at moszumanska.debian.org
Mon Nov 2 01:15:43 UTC 2015
This is an automated email from the git hooks/post-receive script.
noahfx-guest pushed a commit to branch master
in repository pysvn.
commit a1f29e479b9efe37859cf989743d5e9a9bbe785b
Author: Josue Ortega <josueortega at debian.org.gt>
Date: Sun Nov 1 18:49:57 2015 -0600
Import pysvn_1.8.0.orig.tar.gz
---
Builder/builder_custom_init.cmd | 39 +-
Builder/make-devel-rpm-build.sh | 23 +
Builder/version.info | 4 +-
Examples/Client/svn_cmd.py | 11 +
Kit/MacOSX/make_pkg.py | 3 +
Kit/Win32-1.6/pysvn.iss | 46 +-
Kit/Win32-1.6/setup_version_handling.py | 3 +-
Source/build.cmd | 28 +
Source/pysvn/__init__.py.template | 9 +-
Source/pysvn_client.cpp | 5 +
Source/pysvn_client_cmd_info.cpp | 19 +-
Source/pysvn_client_cmd_list.cpp | 21 +-
Source/pysvn_enum_string.cpp | 178 +++---
Source/pysvn_svnenv.hpp | 12 +-
Source/run_py.cmd | 4 +-
Source/run_py.sh | 2 +-
Source/setup_configure.py | 11 +-
Tests/benchmark_diff.py | 37 +-
Tests/test-01.cmd | 8 +-
Tests/test-01.unix.known_good-py2-svn1.9.log | 832 ++++++++++++++++++++++++++
Tests/test-01.unix.known_good-py3-svn1.9.log | 832 ++++++++++++++++++++++++++
Tests/test-02.cmd | 2 +-
Tests/test-03.cmd | 2 +-
Tests/test-03.unix.known_good-py2-svn1.9.log | 21 +
Tests/test-03.unix.known_good-py3-svn1.9.log | 21 +
Tests/test-04.cmd | 14 +-
Tests/test-04.unix.known_good-py2-svn1.9.log | 278 +++++++++
Tests/test-04.unix.known_good-py3-svn1.9.log | 278 +++++++++
Tests/test-05.cmd | 6 +-
Tests/test-05.unix.known_good-py2-svn1.9.log | 208 +++++++
Tests/test-05.unix.known_good-py3-svn1.9.log | 208 +++++++
Tests/test-06.cmd | 6 +-
Tests/test-06.unix.known_good-py2-svn1.9.log | 90 +++
Tests/test-06.unix.known_good-py3-svn1.9.log | 90 +++
Tests/test-07.cmd | 174 +++---
Tests/test-07.unix.known_good-py2-svn1.9.log | 95 +++
Tests/test-07.unix.known_good-py3-svn1.9.log | 95 +++
Tests/test-07.win32.known_good-py2-svn1.7.log | 17 +-
Tests/test-07.win32.known_good-py2-svn1.8.log | 17 +-
Tests/test-07.win32.known_good-py3-svn1.7.log | 101 ++--
Tests/test-07.win32.known_good-py3-svn1.8.log | 101 ++--
Tests/test-08.cmd | 6 +-
Tests/test-08.unix.known_good-py2-svn1.9.log | 94 +++
Tests/test-08.unix.known_good-py3-svn1.9.log | 94 +++
44 files changed, 3773 insertions(+), 372 deletions(-)
diff --git a/Builder/builder_custom_init.cmd b/Builder/builder_custom_init.cmd
index bedbb66..2f626ef 100644
--- a/Builder/builder_custom_init.cmd
+++ b/Builder/builder_custom_init.cmd
@@ -1,6 +1,4 @@
@echo off
-rem figure out where we are
-for %%I in ( %0\..\.. ) do set WORKDIR=%%~fI
set PY_MAJ=2
if not "%1" == "" set PY_MAJ=%1
@@ -13,37 +11,27 @@ if not "%4" == "" set SVN_VER_MAJ_MIN=%4
if "%SVN_VER_MAJ_MIN%" == "" set /p SVN_VER_MAJ_MIN="Build Version (1.8): "
if "%SVN_VER_MAJ_MIN%" == "" set SVN_VER_MAJ_MIN=1.8
-if "%SVN_VER_MAJ_MIN%" == "1.4" set SVN_VER_MAJ_DASH_MIN=1-4
-if "%SVN_VER_MAJ_MIN%" == "1.5" set SVN_VER_MAJ_DASH_MIN=1-5
-if "%SVN_VER_MAJ_MIN%" == "1.6" set SVN_VER_MAJ_DASH_MIN=1-6
-if "%SVN_VER_MAJ_MIN%" == "1.7" set SVN_VER_MAJ_DASH_MIN=1-7
-if "%SVN_VER_MAJ_MIN%" == "1.8" set SVN_VER_MAJ_DASH_MIN=1-8
-
-
+set SVN_VER_MAJ_DASH_MIN=%SVN_VER_MAJ_MIN:.=-%
rem Save CWD
pushd .
-rem in development the version info can be found
-rem otherwise the builder will have run it already
-if "%PY_MAJ%.%PY_MIN%" == "2.4" set COMPILER=msvc71
-if "%PY_MAJ%.%PY_MIN%" == "2.5" set COMPILER=msvc71
-if "%PY_MAJ%.%PY_MIN%" == "2.6" set COMPILER=msvc90
-if "%PY_MAJ%.%PY_MIN%" == "2.7" set COMPILER=msvc90
-if "%PY_MAJ%.%PY_MIN%" == "3.0" set COMPILER=msvc90
-if "%PY_MAJ%.%PY_MIN%" == "3.1" set COMPILER=msvc90
-if "%PY_MAJ%.%PY_MIN%" == "3.2" set COMPILER=msvc90
-
-if exist ..\..\ReleaseEngineering\win32-%COMPILER%\software-versions-%SVN_VER_MAJ_MIN%.cmd (
- pushd ..\..\ReleaseEngineering\win32-%COMPILER%
+set VC_VER=9.0
+
+if exist ..\..\ReleaseEngineering\win32-vc-%VC_VER%\software-versions-%SVN_VER_MAJ_MIN%.cmd (
+ echo Setting up compiler VC %VC_VER%
+ pushd ..\..\ReleaseEngineering\win32-vc-%VC_VER%
call software-versions-%SVN_VER_MAJ_MIN%.cmd off
popd
- )
+) else (
+ echo No compiler setup found
+ pause
+)
-set PYCXX=%WORKDIR%\Import\pycxx-%PYCXX_VER%
+set PYCXX=%BUILDER_TOP_DIR%\Import\pycxx-%PYCXX_VER%
set PY=c:\python%PY_MAJ%%PY_MIN%.win32
if not exist %PY%\python.exe set PY=c:\python%PY_MAJ%%PY_MIN%
-set PYTHONPATH=%WORKDIR%\Source
+set PYTHONPATH=%BUILDER_TOP_DIR%\Source
set PYTHON=%PY%\python.exe
rem Need python and SVN on the path
@@ -51,7 +39,8 @@ PATH %PY%;%SVN_BIN%;%PATH%
rem prove the python version selected
python -c "import sys;print( 'Info: Python Version %%s' %% sys.version )"
-svn --version
+echo SVN Version:
+svn --version --quiet
rem restore original CWD
popd
diff --git a/Builder/make-devel-rpm-build.sh b/Builder/make-devel-rpm-build.sh
new file mode 100755
index 0000000..e6326d6
--- /dev/null
+++ b/Builder/make-devel-rpm-build.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+#
+# 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 <<EOF >/tmp/pysvn-workbench-${V}/Builder/version.info
+MAJOR=${MAJOR}
+MINOR=${MINOR}
+PATCH=${PATCH}
+BUILD=${BUILD}
+EOF
+echo Info: Creating source kit...
+tar czf ~/rpmbuild/SOURCES/pysvn-${V}.tar.gz -C /tmp pysvn-${V}
+echo Info: Running rpmbuild
+cd ~/rpmbuild/SPECS
+rpmbuild -ba pysvn.spec
diff --git a/Builder/version.info b/Builder/version.info
index cd692ab..77601a9 100644
--- a/Builder/version.info
+++ b/Builder/version.info
@@ -1,4 +1,4 @@
MAJOR=1
-MINOR=7
-PATCH=10
+MINOR=8
+PATCH=0
BUILD=0
diff --git a/Examples/Client/svn_cmd.py b/Examples/Client/svn_cmd.py
index 07485dd..f7f0aa2 100644
--- a/Examples/Client/svn_cmd.py
+++ b/Examples/Client/svn_cmd.py
@@ -199,6 +199,13 @@ if hasattr( pysvn.wc_notify_action, 'update_broken_lock' ):
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
@@ -677,6 +684,7 @@ class SvnCommand:
for arg in positional_args:
all_files = self.client.ls( arg, revision=revision, recurse=recurse )
+ all_files.sort( key=self.__sortKeyLsList )
if verbose:
for file in all_files:
args = {}
@@ -690,6 +698,9 @@ class SvnCommand:
for file in all_files:
print( '%(name)s' % file )
+ def __sortKeyLsList( self, entry ):
+ return entry['name']
+
def cmd_list( self, args ):
recurse = args.getBooleanOption( '--recursive', True )
revision = args.getOptionalRevision( '--revision', 'head' )
diff --git a/Kit/MacOSX/make_pkg.py b/Kit/MacOSX/make_pkg.py
index 71ec509..f085596 100644
--- a/Kit/MacOSX/make_pkg.py
+++ b/Kit/MacOSX/make_pkg.py
@@ -90,6 +90,9 @@ elif pymaj == 3 and pymin == 3:
elif pymaj == 3 and pymin == 4:
install_dir = '/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages'
+elif pymaj == 3 and pymin == 5:
+ install_dir = '/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages'
+
else:
raise RuntimeError( 'Unsupported version of python' )
diff --git a/Kit/Win32-1.6/pysvn.iss b/Kit/Win32-1.6/pysvn.iss
index becf7bb..e170760 100644
--- a/Kit/Win32-1.6/pysvn.iss
+++ b/Kit/Win32-1.6/pysvn.iss
@@ -13,13 +13,23 @@ begin
'', install_path );
if not rcb then
begin
- rcb := RegQueryStringValue( HKCU,
- 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath', '', install_path );
+ rcb := RegQueryStringValue( HKLM,
+ 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath', '', install_path );
if not rcb then
begin
- MsgBox( 'pysvn requires Python %(py_maj)d.%(py_min)d to be installed.' #13 #13
- 'Quitting installation',
- mbError, MB_OK );
+ 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 Python %(py_maj)d.%(py_min)d to be installed.' #13 #13
+ 'Quitting installation',
+ mbError, MB_OK );
+ end;
+ end;
end;
end;
Result := rcb;
@@ -39,8 +49,8 @@ begin
end
else
begin
- rcb := RegQueryStringValue( HKCU,
- 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d\InstallPath',
+ rcb := RegQueryStringValue( HKLM,
+ 'SOFTWARE\Python\PythonCore\%(py_maj)d.%(py_min)d-32\InstallPath',
'', install_path );
if rcb then
begin
@@ -48,7 +58,27 @@ begin
end
else
begin
- Result := 'c:\python%(py_maj)d.%(py_min)d';
+ 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;
diff --git a/Kit/Win32-1.6/setup_version_handling.py b/Kit/Win32-1.6/setup_version_handling.py
index 5deb0f8..9a2f9de 100644
--- a/Kit/Win32-1.6/setup_version_handling.py
+++ b/Kit/Win32-1.6/setup_version_handling.py
@@ -47,7 +47,6 @@ f.close()
all_dlls = [dll for dll in os.listdir( 'tmp' ) if dll.lower().endswith( '.dll' )]
-
msvc90_dlls = [
R'c:\Program Files (x86)\Microsoft Visual Studio 9.0\vc\redist\x86\Microsoft.VC90.CRT\Microsoft.VC90.CRT.manifest',
R'c:\Program Files (x86)\Microsoft Visual Studio 9.0\vc\redist\x86\Microsoft.VC90.CRT\msvcm90.dll',
@@ -55,6 +54,8 @@ msvc90_dlls = [
R'c:\Program Files (x86)\Microsoft Visual Studio 9.0\vc\redist\x86\Microsoft.VC90.CRT\msvcr90.dll',
]
+msvc90_dlls = []
+
if py_maj == 3:
all_dlls.extend( msvc90_dlls )
diff --git a/Source/build.cmd b/Source/build.cmd
new file mode 100644
index 0000000..7ce5ebb
--- /dev/null
+++ b/Source/build.cmd
@@ -0,0 +1,28 @@
+setlocal
+if not "%1" == "" set PYVER=%1
+if "%PYVER%" == "" set /P PYVER="Python version (Mm): "
+if not EXIST c:\python%PYVER%.win32\python.exe (
+ echo Error: Unknown python version
+ exit /b 2
+ )
+
+if not "%2" == "" set SVNVER=%2
+if "%SVNVER%" == "" set /P SVNVER="SVN version (M.m.P): "
+
+if not EXIST c:\BuildRoot\Win32-MSVC90-%SVNVER%\svn-win32-%SVNVER%\bin\svn.exe (
+ echo Error: Unknown SVN version
+ exit /b 2
+ )
+
+c:\python%PYVER%.win32\python setup.py configure --verbose --platform=win32 --pycxx-dir=%USERPROFILE%\wc\svn\PyCxx --svn-root-dir=c:\BuildRoot\Win32-MSVC90-%SVNVER%\svn-win32-%SVNVER%
+if ERRORLEVEL 1 goto :EOF
+nmake clean
+if ERRORLEVEL 1 goto :EOF
+nmake
+if ERRORLEVEL 1 goto :EOF
+cd ..\Tests
+if ERRORLEVEL 1 goto :EOF
+nmake clean
+if ERRORLEVEL 1 goto :EOF
+nmake
+endlocal
diff --git a/Source/pysvn/__init__.py.template b/Source/pysvn/__init__.py.template
index 10b4aa5..6631489 100644
--- a/Source/pysvn/__init__.py.template
+++ b/Source/pysvn/__init__.py.template
@@ -21,13 +21,20 @@ class PysvnDictBase(user_dict_base):
user_dict_base.__init__( self, value_dict )
self.__name = name
if self.__name is None:
- print( '%s given None as name' % self.__class__.__name__ )
+ 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))
diff --git a/Source/pysvn_client.cpp b/Source/pysvn_client.cpp
index f8877ed..c242ddc 100644
--- a/Source/pysvn_client.cpp
+++ b/Source/pysvn_client.cpp
@@ -721,6 +721,11 @@ Py::Object pysvn_client::cmd_root_url_from_path( const Py::Tuple& a_args, const
{
std::string norm_path( svnNormalisedIfPath( path, pool ) );
+ checkThreadPermission();
+
+ PythonAllowThreads permission( m_context );
+
+ // known to call back into pysvn
svn_error_t *error = svn_client_root_url_from_path
(
&root_url,
diff --git a/Source/pysvn_client_cmd_info.cpp b/Source/pysvn_client_cmd_info.cpp
index 771e286..9f4c0f5 100644
--- a/Source/pysvn_client_cmd_info.cpp
+++ b/Source/pysvn_client_cmd_info.cpp
@@ -20,7 +20,6 @@
#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";
@@ -1380,16 +1379,20 @@ Py::Object pysvn_client::cmd_status( const Py::Tuple &a_args, const Py::Dict &a_
throw_client_error( e );
}
- apr_array_header_t *statusarray = svn_sort__hash( status_hash, svn_sort_compare_items_as_paths, pool );
+ // Loop over array, returning each name/status-structure
- // Loop over array, printing each name/status-structure
- for (int i = statusarray->nelts-1; i >= 0; i--)
+ for( apr_hash_index_t *hi = apr_hash_first( pool, status_hash );
+ hi != NULL;
+ hi = apr_hash_next( hi ) )
{
- const svn_sort__item_t *item = &APR_ARRAY_IDX( statusarray, i, const svn_sort__item_t );
- pysvn_wc_status_t *status = (pysvn_wc_status_t *)item->value;
+ const void *key;
+ void *val;
+ apr_hash_this( hi, &key, NULL, &val );
+
+ pysvn_wc_status_t *status = (pysvn_wc_status_t *)val;
entries_list.append( toObject(
- Py::String( osNormalisedPath( (const char *)item->key, pool ), "UTF-8" ),
+ Py::String( osNormalisedPath( (const char *)key, pool ), "UTF-8" ),
*status,
pool,
m_wrapper_status,
@@ -1397,5 +1400,7 @@ Py::Object pysvn_client::cmd_status( const Py::Tuple &a_args, const Py::Dict &a_
m_wrapper_lock ) );
}
+ entries_list.sort();
+
return entries_list;
}
diff --git a/Source/pysvn_client_cmd_list.cpp b/Source/pysvn_client_cmd_list.cpp
index 696b1f3..fbd76bf 100644
--- a/Source/pysvn_client_cmd_list.cpp
+++ b/Source/pysvn_client_cmd_list.cpp
@@ -20,14 +20,8 @@
#include "pysvn_svnenv.hpp"
#include "svn_path.h"
#include "svn_config.h"
-#include "svn_sorts.h"
#include "pysvn_static_strings.hpp"
-static int compare_items_as_paths( const svn_sort__item_t *a, const svn_sort__item_t *b)
-{
- return svn_path_compare_paths ((const char *)a->key, (const char *)b->key);
-}
-
Py::Object pysvn_client::cmd_ls( const Py::Tuple &a_args, const Py::Dict &a_kws )
{
static argument_description args_desc[] =
@@ -100,9 +94,6 @@ Py::Object pysvn_client::cmd_ls( const Py::Tuple &a_args, const Py::Dict &a_kws
throw_client_error( e );
}
-
- apr_array_header_t *array = svn_sort__hash( hash, compare_items_as_paths, pool );
-
std::string base_path;
if( !norm_path.empty() )
{
@@ -113,12 +104,16 @@ Py::Object pysvn_client::cmd_ls( const Py::Tuple &a_args, const Py::Dict &a_kws
// convert the entries into python objects
Py::List entries_list;
- for( int i = 0; i < array->nelts; ++i )
+ for( apr_hash_index_t *hi = apr_hash_first( pool, hash );
+ hi != NULL;
+ hi = apr_hash_next( hi ) )
{
- svn_sort__item_t *item = &APR_ARRAY_IDX( array, i, svn_sort__item_t );
+ const void *key;
+ void *val;
+ apr_hash_this( hi, &key, NULL, &val );
- const char *utf8_entryname = static_cast<const char *>( item->key );
- svn_dirent_t *dirent = static_cast<svn_dirent_t *>( apr_hash_get( hash, utf8_entryname, item->klen ) );
+ const char *utf8_entryname = static_cast<const char *>( key );
+ svn_dirent_t *dirent = static_cast<svn_dirent_t *>( val );
std::string full_name( base_path );
full_name += utf8_entryname;
diff --git a/Source/pysvn_enum_string.cpp b/Source/pysvn_enum_string.cpp
index 18da332..ea6082e 100644
--- a/Source/pysvn_enum_string.cpp
+++ b/Source/pysvn_enum_string.cpp
@@ -22,28 +22,28 @@ template <> EnumString< svn_opt_revision_kind >::EnumString()
: m_type_name( "opt_revision_kind" )
{
// No revision information given.
- add(svn_opt_revision_unspecified, "unspecified");
+ add( svn_opt_revision_unspecified, "unspecified" );
// revision given as number
- add(svn_opt_revision_number, "number");
+ add( svn_opt_revision_number, "number" );
// revision given as date
- add(svn_opt_revision_date, "date");
+ add( svn_opt_revision_date, "date" );
// rev of most recent change
- add(svn_opt_revision_committed, "committed");
+ add( svn_opt_revision_committed, "committed" );
// (rev of most recent change) - 1
- add(svn_opt_revision_previous, "previous");
+ add( svn_opt_revision_previous, "previous" );
// .svn/entries current revision
- add(svn_opt_revision_base, "base");
+ add( svn_opt_revision_base, "base" );
// current, plus local mods
- add(svn_opt_revision_working, "working");
+ add( svn_opt_revision_working, "working" );
// repository youngest
- add(svn_opt_revision_head, "head");
+ add( svn_opt_revision_head, "head" );
}
template <> EnumString< svn_wc_notify_action_t >::EnumString()
@@ -54,6 +54,7 @@ template <> EnumString< svn_wc_notify_action_t >::EnumString()
// Copying a versioned path.
add( svn_wc_notify_copy, "copy" );
+
// Deleting a versioned path.
add( svn_wc_notify_delete, "delete" );
@@ -183,6 +184,13 @@ template <> EnumString< svn_wc_notify_action_t >::EnumString()
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()
@@ -275,6 +283,10 @@ template <> EnumString< svn_wc_notify_state_t >::EnumString()
// 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()
@@ -307,6 +319,14 @@ template <> EnumString< svn_node_kind_t >::EnumString()
// 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 )
@@ -399,12 +419,22 @@ template <> EnumString< svn_wc_conflict_choice_t >::EnumString()
// 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.
- add( svn_wc_conflict_choose_base, "base" ); // user chooses the original version
- add( svn_wc_conflict_choose_theirs_full, "theirs_full" ); // user chooses incoming version
- add( svn_wc_conflict_choose_mine_full, "mine_full" ); // user chooses own version
- add( svn_wc_conflict_choose_theirs_conflict, "theirs_conflict" ); // user chooses incoming (for conflicted hunks)
- add( svn_wc_conflict_choose_mine_conflict, "mine_conflict" ); // user chooses own (for conflicted hunks)
- add( svn_wc_conflict_choose_merged, "merged" ); // user chooses the merged version
+ // 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
@@ -422,15 +452,15 @@ template <> EnumString< svn_wc_operation_t >::EnumString()
//--------------------------------------------------------------------------------
template <> void pysvn_enum< svn_opt_revision_kind >::init_type(void)
{
- behaviors().name("opt_revision_kind");
- behaviors().doc("opt_revision_kind enumeration");
+ 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().name( "opt_revision_kind" );
+ behaviors().doc( "opt_revision_kind value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -440,15 +470,15 @@ template <> void pysvn_enum_value< svn_opt_revision_kind >::init_type(void)
template <> void pysvn_enum< svn_wc_notify_action_t >::init_type(void)
{
- behaviors().name("wc_notify_action");
- behaviors().doc("wc_notify_action enumeration");
+ 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().name( "wc_notify_action" );
+ behaviors().doc( "wc_notify_action value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -458,15 +488,15 @@ template <> void pysvn_enum_value< svn_wc_notify_action_t >::init_type(void)
template <> void pysvn_enum< svn_wc_status_kind >::init_type(void)
{
- behaviors().name("wc_status_kind");
- behaviors().doc("wc_status_kind enumeration");
+ 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().name( "wc_status_kind" );
+ behaviors().doc( "wc_status_kind value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -476,15 +506,15 @@ template <> void pysvn_enum_value< svn_wc_status_kind >::init_type(void)
template <> void pysvn_enum< svn_wc_schedule_t >::init_type(void)
{
- behaviors().name("wc_schedule");
- behaviors().doc("wc_schedule enumeration");
+ 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().name( "wc_schedule" );
+ behaviors().doc( "wc_schedule value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -494,15 +524,15 @@ template <> void pysvn_enum_value< svn_wc_schedule_t >::init_type(void)
template <> void pysvn_enum< svn_wc_merge_outcome_t >::init_type(void)
{
- behaviors().name("wc_merge_outcome");
- behaviors().doc("wc_merge_outcome enumeration");
+ 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().name( "wc_merge_outcome" );
+ behaviors().doc( "wc_merge_outcome value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -512,15 +542,15 @@ template <> void pysvn_enum_value< svn_wc_merge_outcome_t >::init_type(void)
template <> void pysvn_enum< svn_wc_notify_state_t >::init_type(void)
{
- behaviors().name("wc_notify_state");
- behaviors().doc("wc_notify_state enumeration");
+ 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().name( "wc_notify_state" );
+ behaviors().doc( "wc_notify_state value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -530,15 +560,15 @@ template <> void pysvn_enum_value< svn_wc_notify_state_t >::init_type(void)
template <> void pysvn_enum< svn_node_kind_t >::init_type(void)
{
- behaviors().name("node_kind");
- behaviors().doc("node_kind enumeration");
+ 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().name( "node_kind" );
+ behaviors().doc( "node_kind value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -549,15 +579,15 @@ template <> void pysvn_enum_value< svn_node_kind_t >::init_type(void)
#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().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().name( "diff_file_ignore_space" );
+ behaviors().doc( "diff_file_ignore_space value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -569,15 +599,15 @@ template <> void pysvn_enum_value< svn_diff_file_ignore_space_t >::init_type(voi
#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().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().name( "client_diff_summarize_kind" );
+ behaviors().doc( "client_diff_summarize_kind value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -589,15 +619,15 @@ template <> void pysvn_enum_value< svn_client_diff_summarize_kind_t >::init_type
#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().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().name( "depth" );
+ behaviors().doc( "depth value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -609,15 +639,15 @@ template <> void pysvn_enum_value< svn_depth_t >::init_type(void)
#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().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().name( "wc_conflict_choice" );
+ behaviors().doc( "wc_conflict_choice value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -628,15 +658,15 @@ template <> void pysvn_enum_value< svn_wc_conflict_choice_t >::init_type(void)
template <> void pysvn_enum< svn_wc_conflict_action_t >::init_type(void)
{
- behaviors().name("wc_conflict_action");
- behaviors().doc("wc_conflict_action enumeration");
+ 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().name( "wc_conflict_action" );
+ behaviors().doc( "wc_conflict_action value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -647,15 +677,15 @@ template <> void pysvn_enum_value< svn_wc_conflict_action_t >::init_type(void)
template <> void pysvn_enum< svn_wc_conflict_kind_t >::init_type(void)
{
- behaviors().name("wc_conflict_kind");
- behaviors().doc("wc_conflict_kind enumeration");
+ 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().name( "wc_conflict_kind" );
+ behaviors().doc( "wc_conflict_kind value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -665,15 +695,15 @@ template <> void pysvn_enum_value< svn_wc_conflict_kind_t >::init_type(void)
template <> void pysvn_enum< svn_wc_conflict_reason_t >::init_type(void)
{
- behaviors().name("wc_conflict_reason");
- behaviors().doc("wc_conflict_reason enumeration");
+ 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().name( "wc_conflict_reason" );
+ behaviors().doc( "wc_conflict_reason value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
@@ -685,15 +715,15 @@ template <> void pysvn_enum_value< svn_wc_conflict_reason_t >::init_type(void)
#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().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().name( "wc_operation" );
+ behaviors().doc( "wc_operation value" );
behaviors().supportCompare();
behaviors().supportRichCompare();
behaviors().supportRepr();
diff --git a/Source/pysvn_svnenv.hpp b/Source/pysvn_svnenv.hpp
index a0038dd..4629f0c 100644
--- a/Source/pysvn_svnenv.hpp
+++ b/Source/pysvn_svnenv.hpp
@@ -17,7 +17,7 @@
#endif
#if PYCXX_VERSION < PYCXX_MAKEVERSION( 6, 2, 4 )
-#error PyCXX version 6.2.4 is required
+#error PyCXX version 6.2.4 or later required
#endif
#include <svn_version.h>
@@ -26,6 +26,7 @@
#include <svn_fs.h>
#include <svn_repos.h>
#include <apr_xlate.h>
+
#include <string>
#if !defined( SVN_VER_MAJOR )
@@ -214,6 +215,15 @@
#define PYSVN_HAS_CLIENT_CREATE_CONTEXT2 1
#endif
+#if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR >= 9) || SVN_VER_MAJOR > 1
+#define PYSVN_HAS_SVN_1_9
+#define PYSVN_HAS_CLIENT_VACUUM QQQ
+#define PYSVN_HAS_CLIENT_REVERT3 QQQ
+#define PYSVN_HAS_CLIENT_COPY7 QQQ
+#define PYSVN_HAS_CLIENT_CAT3 QQQ
+#define PYSVN_HAS_CLIENT_INFO4 QQQ
+#endif
+
#if defined( PYSVN_HAS_CLIENT_STATUS3 )
typedef svn_wc_status2_t pysvn_wc_status_t;
diff --git a/Source/run_py.cmd b/Source/run_py.cmd
index 005c8d3..edf7de9 100644
--- a/Source/run_py.cmd
+++ b/Source/run_py.cmd
@@ -1,4 +1,4 @@
setlocal
-set PYTHONPATH=%WORKDIR%\Source
-c:\python23\python %*
+set PYTHONPATH=%BUILDER_TOP_DIR%\Source
+c:\python27.win32\python %*
endlocal
diff --git a/Source/run_py.sh b/Source/run_py.sh
index 1bb7151..6993aad 100755
--- a/Source/run_py.sh
+++ b/Source/run_py.sh
@@ -1,5 +1,5 @@
#!/bin/sh
-export PYTHONPATH=${WORKDIR}/Source
+export PYTHONPATH=${BUILDER_TOP_DIR}/Source
export LD_LIBRARY_PATH=${SVNCPP_LIB}
export DYLD_LIBRARY_PATH=${SVNCPP_LIB}
${PYTHON} $*
diff --git a/Source/setup_configure.py b/Source/setup_configure.py
index 5a1a2bf..afeee2d 100644
--- a/Source/setup_configure.py
+++ b/Source/setup_configure.py
@@ -70,6 +70,7 @@ class Options:
'--svn-bin-dir': (1, '<dir>'),
'--svn-root-dir': (1, '<dir>'),
'--verbose': (0, None),
+ '--disable-deprecated-functions-warnings': (0, None),
}
def __init__( self, argv ):
@@ -1099,9 +1100,9 @@ class UnixCompilerGCC(CompilerGCC):
'/usr/pkg/include/subversion-1', # netbsd
]
self._find_paths_svn_bin = [
- '/usr/bin', # typical Linux
- '/usr/local/bin', # typical *BSD
- '/usr/pkg/bin', # netbsd
+ '/usr/bin', # typical Linux
+ '/usr/local/bin', # typical *BSD
+ '/usr/pkg/bin', # netbsd
]
self._find_paths_svn_lib = [
'/usr/lib64', # typical 64bit Linux
@@ -1169,6 +1170,10 @@ class UnixCompilerGCC(CompilerGCC):
print( 'Info: Debug enabled' )
py_cflags_list.append( '-g' )
+ if self.options.hasOption( '--disable-deprecated-functions-warnings' ):
+ print( 'Info: Disable deprecated functions warnings' )
+ py_cflags_list.append( '-Wno-deprecated-declarations' )
+
self._addVar( 'CCCFLAGS', ' '.join( py_cflags_list ) )
self._addVar( 'LDLIBS', ' '.join( self._getLdLibs() ) )
self._addVar( 'LDSHARED', '%(CCC)s -shared -g' )
diff --git a/Tests/benchmark_diff.py b/Tests/benchmark_diff.py
index e370ed7..133722f 100644
--- a/Tests/benchmark_diff.py
+++ b/Tests/benchmark_diff.py
@@ -57,10 +57,14 @@ class ReplaceDirtInString:
self.python = self.find( 'PYTHON' )
self.username = self.find( 'Username' )
... 4115 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/pysvn.git
More information about the Python-modules-commits
mailing list