Checkout Tools
  • last updated 6 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
* subversion/tests/cmdline/svntest/__init__.py

(): Remove a fallback import of the external sqlite module. It was

required for compatibility with Python 2.4, where sqlite3 was only

available as an external module. Python 2.5+ includes a standard

sqlite3 module and the minimal required Python version is 2.7.

Relative module / import lookup is more strict in Python 3. Provide the

relative paths where needed in our build and test scripts. These continue

to work with Python 2 just fine.

* subversion/tests/cmdline/svntest/__init__.py

* subversion/tests/cmdline/svntest/deeptrees.py

* subversion/tests/cmdline/svntest/mergetrees.py

(): Make the import path explicit.

  1. … 2 more files in changeset.
Require Python ≥2.7 for Subversion 1.9, part 1: documentation and dependency

version checks.

* INSTALL

(I.C. Dependencies in Detail):

Document that Python 2.7 is required.

Add statement about Python 3.x.

* subversion/tests/cmdline/README,

* subversion/bindings/swig/INSTALL:

Document that Python 2.7 is required.

* autogen.sh,

* build/find_python.sh,

* configure.ac,

* Makefile.in (check),

* subversion/tests/cmdline/svntest/__init__.py:

Update comments, version number checks, and error messages.

  1. … 7 more files in changeset.
Require Python >=2.5.

* configure.ac,

* INSTALL,

* autogen.sh,

* Makefile.in,

* subversion/bindings/swig/INSTALL,

* subversion/tests/cmdline/README:

Update docs and warnings.

* build/find_python.sh,

* subversion/tests/cmdline/svntest/__init__.py:

Require Python >= 2.5.

  1. … 7 more files in changeset.
Protect against bad python proggies.

* subversion/test/cmdline/svntest/__init__.py:

(__all__): die, idiots

Apply ASF license headers to a number of files included under that license

but lacking said header.

Patch by: Niall Pemberton <niallp{_AT_}apache.org>

  1. … 175 more files in changeset.
Revert r39731, which was my attempt to make the test suite use SuSE's

'python-sqlite' package. That package provides a module called 'sqlite'. I

found that the tests fail in trying to run an 'execute' with that module. The

'python-sqlite2' package for SuSE provides a module called 'pysqlite2' which

does work, and which was already being picked up.

The log message of the reverted change was:

* subversion/tests/cmdline/svntest/__init__.py

Support systems on which the Python sqlite3 module is named 'sqlite'.

* subversion/tests/cmdline/svntest/__init__.py

Support systems on which the Python sqlite3 module is named 'sqlite'.

Ensure we can import sqlite3 when it is provided as an external module,

for compat with Python 2.4.

* subversion/tests/cmdline/upgrade_tests.py:

Don't import sqlite3 directly, use the sqlite3 found by svntest.

* subversion/tests/cmdline/svntest/__init__.py:

If directly importing the sqlite3 module fails, attempt to import it

from the pysqlite2 package before failing.

  1. … 1 more file in changeset.
* subversion/tests/cmdline/svntest/__init__.py:

Output newlines after error messages.

Require the sqlite3 module for running the python testsuite.

This most likely breaks the windows buildbot, as it does not currently have

the python sqlite3 module installed.

The discussion is here: http://svn.haxx.se/dev/archive-2009-09/0557.shtml

* subversion/tests/cmdline/upgrade_tests.py

Import sqlite3 at the top level.

(check_formt, check_dav_cache): Don't import sqlite3.

(has_sqlite): Remove.

(test_list): Don't make running tests conditional on the existence of the

sqlite3 module (since we're now guaranteed to have it).

* subversion/tests/cmdline/svntest/__init__.py:

Attempt to import sqlite3, and if we can't, die a horrible death.

(With a friendly error message, of course.)

  1. … 1 more file in changeset.
Introducing a cmdline-test factory, which writes py tests that PASS,

given a sequence of pseudo-shell commands. (Read the top comment in new

file factory.py.)

* subversion/tests/cmdline/svntest/factory.py: New file. Big.

* subversion/tests/cmdline/svntest/__init__.py: Import 'factory'.

* subversion/tests/cmdline/svntest/actions.py

(run_and_verify_commit): Move some internal parsing to...

(process_output_for_commit): ...this new function, for use in factory.py.

(get_wc_base_rev): New convenience function, used in factory.py.

(run_and_verify_svn2): Remove an obsolete check (checked just above).

* subversion/tests/cmdline/svntest/sandbox.py

(Sandbox.is_built): New function, used in factory.py.

(Sandbox._is_built): New internal flag.

* subversion/tests/cmdline/svntest/tree.py

(SVNTreeNode.print_script): Add two parameters PREPEND and DROP_EMPTIES.

Tweak output. Move some special parsing out into...

(get_printable_path): ...this new function.

(SVNTreeNode.recurse, SVNTreeNode.find_node): New functions.

(dump_tree_script, dump_tree_script__crawler): Add an explicit stream

argument, used by factory.py to print to a string instead of stdout.

Count the prints. Add parameter WC_VARNAME.

  1. … 4 more files in changeset.
Move the Sandbox class into its own module. It is going to grow quite a

bit larger, so give it space.

* subversion/tests/cmdline/svntest/sandbox.py: new module

(Sandbox): moved from main.py. many references have svntest.main added

to them. some minor whitespace fixes in default args.

(_deferred_test_paths): moved from main.py

(cleanup_deferred_test_paths): moved from main._cleanup_deferred_test_paths.

no need to copy the global. we will keep the reference.

(_cleanup_test_path): moved from main.py. added svntest.main prefix to

the verbose_mode value.

* subversion/tests/cmdline/svntest/__init__.py: import sandbox

* subversion/tests/cmdline/svntest/main.py:

(Sandbox, _deferred_test_paths, _cleanup_deferred_test_paths,

_cleanup_test_path): moved to sandbox.py

(TestRunner.run, _internal_run_tests, run_tests): add svntest.sandbox

prefix to various references.

* subversion/tests/cmdline/svntest/testcase.py: update a couple comments

  1. … 3 more files in changeset.
Rationalize the imports in the svntest package. It is a bit tricky because

of circular imports. The easiest solution is to just import the package,

and defer looking for modules within that package until really needed.

* subversion/tests/cmdline/svntest/wc.py:

(): just import the package

* subversion/tests/cmdline/svntest/__init__.py:

(): import all the submodules in a specific order

* subversion/tests/cmdline/svntest/tree.py:

(): import just the package. alter references accordingly.

(SVNTreeNode.as_state, SVNTreeNode.as_item): remove svntest.wc imports

* subversion/tests/cmdline/svntest/actions.py:

(): import the package, then grab the submodules from there

* subversion/tests/cmdline/svntest/main.py:

(): import the package. alter references accordingly. remove import of

actions from the bottom of the module.

* subversion/tests/cmdline/svntest/verify.py:

(): import just the package. alter references.

  1. … 5 more files in changeset.
Python 3 compatibility:

Don't assing values to True/False keywords.

* build/generator/gen_make.py:

* build/generator/gen_msvc_dsp.py:

* build/generator/gen_vcnet_vcproj.py:

* subversion/bindings/swig/python/svn/repos.py:

* subversion/tests/cmdline/svntest/__init__.py:

* tools/client-side/change-svn-wc-format.py:

* tools/dev/contribulyze.py:

* tools/hook-scripts/log-police.py:

* tools/hook-scripts/mailer/mailer.py: Don't assing values to True/False keywords.

  1. … 8 more files in changeset.
Require Python >=2.4.

* build/find_python.sh: Require Python >=2.4.

* subversion/tests/cmdline/svntest/__init__.py: Require Python >=2.4.

* tools/hook-scripts/svn2feed.py: Require Python >=2.4.

* autogen.sh: Update error message.

* configure.ac: Update warning.

* Makefile.in

(check): Update error message.

* INSTALL

(Dependencies in Detail, Building the Latest Source under Windows): Update.

* subversion/bindings/swig/INSTALL

(BUILDING SWIG BINDINGS FOR SVN ON UNIX): Update.

* subversion/tests/cmdline/README: Update.

  1. … 8 more files in changeset.
* INSTALL

* Makefile.in

* autogen.sh

* build/find_python.sh

* configure.ac

* subversion/bindings/swig/INSTALL

* subversion/tests/cmdline/README

* subversion/tests/cmdline/svntest/__init__.py

Bump Python requirement to 2.2 (released over 5.5 years ago).

  1. … 7 more files in changeset.
svntest: Split output handling/verification code into the new "verify"

module. Refactor said verification code, and its consumers (existing

and new).

[ in subversion/tests/cmdline/ ]

* svntest/__init__.py

Add import of new "verify" module.

(SVNAnyOutput): Remove class, replaced by verify.AnyOutput.

* svntest/actions.py

Add import of new "verify" module. Remove import of "SVNAnyOutput".

(SVNUnexpectedOutput, SVNUnexpectedStdout, SVNUnexpectedStderr,

SVNExpectedStdout, SVNExpectedStderr, SVNIncorrectDatatype,

ExpectedOutput, AnyOutput, RegexOutput, UnorderedOutput,

UnorderedRegexOutput, display_trees, display_lines,

compare_and_display_lines): Move into verify.py.

(setup_pristine_repository, run_and_verify_svnversion,

run_and_verify_svn, run_and_verify_load, run_and_verify_dump,

run_and_verify_merge2, run_and_verify_switch, run_and_verify_commit,

run_and_verify_diff_summarize, run_and_verify_commit,

run_and_verify_status, run_and_verify_diff_summarize): Adjust for

API changes, and/or leverage new APIs to simplify code and/or

improve exception handling/diagnostics.

* svntest/verify.py

Based off of code from actions.py.

(verify_outputs): Add new function factored out of the

run_and_verify_svn() function, and other bits of code.

(compare_and_display_lines): Add inline comment.

* authz_tests.py

* basic_tests.py

* cat_tests.py

* checkout_tests.py

* commit_tests.py

* copy_tests.py

* depth_tests.py

* diff_tests.py

* export_tests.py

* externals_tests.py

* history_tests.py

* merge_tests.py

* prop_tests.py

* revert_tests.py

* schedule_tests.py

* stat_tests.py

* svnadmin_tests.py

* svnlook_tests.py

* svnsync_tests.py

* svnversion_tests.py

Adjust for API changes, and/or leverage new APIs. Where applicable,

remove import of "SVNAnyOutput". In some files, also tweak copyright

dates.

  1. … 23 more files in changeset.
Assure that definitions for the names True and False are available.

* subversion/tests/cmdline/svntest/__init__.py

Move definitions here...

* subversion/tests/cmdline/svntest/main.py

...from here.

  1. … 1 more file in changeset.