Conversation
Note that these changes are not compatible with Python2.
- All executable Python scripts directly invoke /usr/bin/python3. - Separate testing of configure and build scripts using Python2 and Python3 no longer required. - Replace distutils.spawn.find_executable() with shutil.which(). - Activate more stringent pylint tests, with some limited corresponding code changes. - configure: Test presence of shlex.quote() and shutil.which(). - Remove mrtrix3.utils.STRING_TYPES, which is no longer required for testing the types of provided function arguments. - population_template: No longer need to bind Python2's raw_input() to input(). - mrtrix3.path: Remove quote() function: shlex.quote() should be used directly. - run_pylint: Remove capability for forcing Python version via environment variable. - Binary test data: Update vectorstats generation / testing scripts to use Python3.
|
All looks sensible, other than the first thing: changing the interpreter on the shebang to |
|
Ok, forget that last comment, it is indeed the recommendation on this PEP: |
|
CI is failing due to lots of these errors during A quick look online reveals that this check is available as of pylint version 2.4. But the version dragged in by which explains the errors. Previously, So, two options:
|
See if this addresses outdated version of pylint pulled by GitHub runner as commented in #2215.
See if this addresses outdated version of pylint pulled by GitHub runner as commented in #2215.
bc357ab to
b4560ca
Compare
|
Installing |
Closes #2210.
Closes #2047.
Will eventually resolve #2190.
Should consider resolving #2191 here.
Made a bit of a list in 3a856ce as to what changed, but would appreciate some reflection on whether or not there's anywhere else in the code base that required gymnastics to support both Python 2 and 3 that I may have missed.