duplicity-team team mailing list archive
-
duplicity-team team
-
Mailing list archive
-
Message #04331
[Merge] lp:~aaron-whitehouse/duplicity/tox_pylint_fixes into lp:duplicity
Aaron Whitehouse has proposed merging lp:~aaron-whitehouse/duplicity/tox_pylint_fixes into lp:duplicity.
Commit message:
Changes needed to run-tests without pylint E0401(import-error) errors
Requested reviews:
duplicity-team (duplicity-team)
For more details, see:
https://code.launchpad.net/~aaron-whitehouse/duplicity/tox_pylint_fixes/+merge/323996
If I run run-tests on the current trunk, I get the following errors:
Pylint test (requires pylint to be installed to pass) ... FAIL
======================================================================
FAIL: test_pylint (testing.test_code.CodeTest)
Pylint test (requires pylint to be installed to pass)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/aaron/Programming/duplicity/20170512_trunk/testing/test_code.py", line 86, in test_pylint
[0, 32])
File "/home/aaron/Programming/duplicity/20170512_trunk/testing/test_code.py", line 40, in run_checker
self.assertTrue(process.returncode in returncodes, output)
AssertionError: ************* Module duplicity.compilec
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/compilec.py:25: [E0401(import-error), ] Unable to import 'distutils.core'
************* Module duplicity.backends._boto_single
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/backends/_boto_single.py:131: [E0401(import-error), BotoBackend.__init__] Unable to import 'boto.s3.connection'
************* Module duplicity.backends.pydrivebackend
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/backends/pydrivebackend.py:115: [E0401(import-error), PyDriveBackend.file_by_name] Unable to import 'pydrive.files'
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/backends/pydrivebackend.py:210: [E0401(import-error), PyDriveBackend._error_code] Unable to import 'pydrive.files'
************* Module duplicity.backends._cf_cloudfiles
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/backends/_cf_cloudfiles.py:72: [E0401(import-error), CloudFilesBackend._error_code] Unable to import 'cloudfiles.errors'
************* Module duplicity.backends.pyrax_identity.hubic
/home/aaron/Programming/duplicity/20170512_trunk/duplicity/backends/pyrax_identity/hubic.py:14: [E0401(import-error), ] Unable to import 'pyrax.base_identity'
With the changes proposed, run-test completes for me without errors.
Presumably these errors do not happen (except perhaps the distutils one?) if all requirements are installed, but if adding them to tox.ini can sort them out (and therefore lower the bar for people to get testing working properly), why not do so?
--
Your team duplicity-team is requested to review the proposed merge of lp:~aaron-whitehouse/duplicity/tox_pylint_fixes into lp:duplicity.
=== modified file 'duplicity/compilec.py'
--- duplicity/compilec.py 2015-02-01 17:37:37 +0000
+++ duplicity/compilec.py 2017-05-12 17:06:16 +0000
@@ -22,7 +22,9 @@
import sys
import os
-from distutils.core import setup, Extension
+
+# https://github.com/PyCQA/pylint/issues/73
+from distutils.core import setup, Extension # pylint: disable=import-error,no-name-in-module
assert len(sys.argv) == 1
sys.argv.append("build")
=== modified file 'tox.ini'
--- tox.ini 2017-05-11 21:01:48 +0000
+++ tox.ini 2017-05-12 17:06:16 +0000
@@ -5,12 +5,16 @@
setenv=
RUN_CODE_TESTS=1
deps=
+ boto
+ coverage
+ jottalib
mock
pexpect
- jottalib
pycodestyle
+ pydrive
pylint
- coverage
+ pyrax
+ python-cloudfiles
[testenv]
commands=
Follow ups