Page MenuHomePhabricator

Jenkins output for pywikibot job is hard to read
Open, LowestPublic

Description

For example:

https://integration.wikimedia.org/ci/job/tox-jessie/1169/console

[tox-jessie] $ /bin/bash -xe /tmp/hudson5485247455240381787.sh
16:33:15 + rm -fR log
16:33:15 + mkdir -p log
16:33:15 + set -o pipefail
16:33:15 + PY_COLORS=1
16:33:15 + tox -v
16:33:15 + tee log/stdout.log
16:33:15 using tox.ini: /home/jenkins/workspace/tox-jessie/tox.ini
16:33:15 using tox-1.9.2 from /usr/local/lib/python2.7/dist-packages/tox/__init__.pyc
16:33:15 flake8 create: /home/jenkins/workspace/tox-jessie/.tox/flake8
16:33:15   /home/jenkins/workspace/tox-jessie/.tox$ /usr/bin/python -m virtualenv --setuptools --python /usr/bin/python2.7 flake8 >/home/jenkins/workspace/tox-jessie/.tox/flake8/log/flake8-0.log
16:33:18 flake8 installdeps: flake8, hacking, flake8-docstrings, flake8-coding, flake8-future-import, flake8-string-format
16:33:18   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8/bin/pip install --process-dependency-links --pre flake8 hacking flake8-docstrings flake8-coding flake8-future-import flake8-string-format >/home/jenkins/workspace/tox-jessie/.tox/flake8/log/flake8-1.log
16:33:20 flake8 develop-inst: /home/jenkins/workspace/tox-jessie
16:33:20   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8/bin/pip install --process-dependency-links --pre -e /home/jenkins/workspace/tox-jessie >/home/jenkins/workspace/tox-jessie/.tox/flake8/log/flake8-2.log
16:33:24 flake8 runtests: PYTHONHASHSEED='2324724050'
16:33:24 flake8 runtests: commands[0] | flake8 --version
16:33:24   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8/bin/flake8 --version 
16:33:24 2.5.0 (pep8: 1.5.7, pep257: 0.2.1.post1, pyflakes: 1.0.0, flake8_coding: 1.1.1, hacking.core: 0.0.1, ProxyChecker: 0.0.1, mccabe: 0.3.1, flake8-string-format: 0.2.1, flake8-future-import: 0.3.2) CPython 2.7.9 on Linux
16:33:24 flake8 runtests: commands[1] | flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103
16:33:24   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8/bin/flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103 
16:33:25 ./pywikibot/__init__.py:469:1: E303 too many blank lines (3)
16:34:13 ./tests/wikibase_tests.py:187:5: E303 too many blank lines (2)
16:34:14 ERROR: InvocationError: '/home/jenkins/workspace/tox-jessie/.tox/flake8/bin/flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103'
16:34:14 flake8-py3 create: /home/jenkins/workspace/tox-jessie/.tox/flake8-py3
16:34:14   /home/jenkins/workspace/tox-jessie/.tox$ /usr/bin/python -m virtualenv --setuptools --python /usr/bin/python3 flake8-py3 >/home/jenkins/workspace/tox-jessie/.tox/flake8-py3/log/flake8-py3-0.log
16:34:17 flake8-py3 installdeps: flake8, flake8-docstrings
16:34:17   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-py3/bin/pip install --process-dependency-links --pre flake8 flake8-docstrings >/home/jenkins/workspace/tox-jessie/.tox/flake8-py3/log/flake8-py3-1.log
16:34:19 flake8-py3 develop-inst: /home/jenkins/workspace/tox-jessie
16:34:19   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-py3/bin/pip install --process-dependency-links --pre -e /home/jenkins/workspace/tox-jessie >/home/jenkins/workspace/tox-jessie/.tox/flake8-py3/log/flake8-py3-2.log
16:34:21 flake8-py3 runtests: PYTHONHASHSEED='2324724050'
16:34:21 flake8-py3 runtests: commands[0] | flake8 --version
16:34:21   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-py3/bin/flake8 --version 
16:34:21 2.5.0 (pep8: 1.5.7, pep257: 0.2.1.post1, pyflakes: 1.0.0, mccabe: 0.3.1) CPython 3.4.2 on Linux
16:34:21 flake8-py3 runtests: commands[1] | flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103
16:34:21   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-py3/bin/flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103 
16:34:21   unknown option 'accept-encodings' ignored
16:34:21   unknown option 'require-code' ignored
16:34:22 ./pywikibot/__init__.py:469:1: E303 too many blank lines (3)
16:35:04 ./tests/wikibase_tests.py:187:5: E303 too many blank lines (2)
16:35:04 ERROR: InvocationError: '/home/jenkins/workspace/tox-jessie/.tox/flake8-py3/bin/flake8 --ignore=D102,D103,E241,E402,E731,D105,D211,FI10,FI12,FI13,FI15,FI5,H101,H201,H202,H236,H237,H301,H306,H404,H405,P102,P103'
16:35:04 flake8-docstrings-mandatory create: /home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory
16:35:04   /home/jenkins/workspace/tox-jessie/.tox$ /usr/bin/python -m virtualenv --setuptools --python /usr/bin/python flake8-docstrings-mandatory >/home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/log/flake8-docstrings-mandatory-0.log
16:35:07 flake8-docstrings-mandatory installdeps: flake8>=2.2.5, flake8-docstrings
16:35:07   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/bin/pip install --process-dependency-links --pre flake8>=2.2.5 flake8-docstrings >/home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/log/flake8-docstrings-mandatory-1.log
16:35:08 flake8-docstrings-mandatory develop-inst: /home/jenkins/workspace/tox-jessie
16:35:08   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/bin/pip install --process-dependency-links --pre -e /home/jenkins/workspace/tox-jessie >/home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/log/flake8-docstrings-mandatory-2.log
16:35:10 flake8-docstrings-mandatory runtests: PYTHONHASHSEED='2324724050'
16:35:10 flake8-docstrings-mandatory runtests: commands[0] | flake8 docs/conf.py ez_setup.py generate_user_files.py pwb.py pywikibot/__init__.py pywikibot/backports.py pywikibot/bot.py pywikibot/bot_choice.py pywikibot/botirc.py pywikibot/comms/ pywikibot/compat/ pywikibot/config2.py pywikibot/daemonize.py pywikibot/data/ pywikibot/date.py pywikibot/diff.py pywikibot/echo.py pywikibot/editor.py pywikibot/exceptions.py pywikibot/family.py pywikibot/flow.py pywikibot/interwiki_graph.py pywikibot/families/ pywikibot/fixes.py pywikibot/i18n.py pywikibot/logentries.py pywikibot/logging.py pywikibot/login.py pywikibot/page.py pywikibot/pagegenerators.py pywikibot/plural.py pywikibot/proofreadpage.py pywikibot/site_detect.py pywikibot/site.py pywikibot/textlib.py pywikibot/throttle.py pywikibot/titletranslate.py pywikibot/tools/ pywikibot/userinterfaces/ pywikibot/version.py pywikibot/weblib.py pywikibot/xmlreader.py scripts/__init__.py scripts/add_text.py scripts/basic.py scripts/blockpageschecker.py scripts/blockreview.py scripts/capitalize_redirects.py scripts/category.py scripts/category_redirect.py scripts/claimit.py scripts/clean_sandbox.py scripts/commonscat.py scripts/coordinate_import.py scripts/cosmetic_changes.py scripts/create_categories.py scripts/data_ingestion.py scripts/delete.py scripts/disambredir.py scripts/djvutext.py scripts/editarticle.py scripts/fixing_redirects.py scripts/flickrripper.py scripts/harvest_template.py scripts/illustrate_wikidata.py scripts/image.py scripts/imagerecat.py scripts/imageuncat.py scripts/listpages.py scripts/login.py scripts/maintenance/__init__.py scripts/maintenance/make_i18n_dict.py scripts/misspelling.py scripts/newitem.py scripts/noreferences.py scripts/pagefromfile.py scripts/patrol.py scripts/piper.py scripts/protect.py scripts/replace.py scripts/selflink.py scripts/shell.py scripts/spamremove.py scripts/states_redirect.py scripts/template.py scripts/touch.py scripts/transferbot.py scripts/unlink.py scripts/unusedfiles.py scripts/upload.py scripts/version.py scripts/watchlist.py setup.py tests/__init__.py tests/aspects.py tests/utils.py tests/api_tests.py tests/archivebot_tests.py tests/basepage_tests.py tests/bot_tests.py tests/cache_tests.py tests/category_tests.py tests/checkimages_tests.py tests/cosmetic_changes_tests.py tests/data/ tests/data_ingestion_tests.py tests/date_tests.py tests/deletionbot_tests.py tests/disambredir_tests.py tests/djvu_tests.py tests/dry_api_tests.py tests/edit_tests.py tests/edit_failure_tests.py tests/exceptions_tests.py tests/family_tests.py tests/file_tests.py tests/flow_edit_tests.py tests/flow_tests.py tests/http_tests.py tests/i18n/ tests/interwiki_graph_tests.py tests/interwiki_link_tests.py tests/l10n_tests.py tests/link_tests.py tests/logentry_tests.py tests/mediawikiversion_tests.py tests/namespace_tests.py tests/oauth_tests.py tests/page_tests.py tests/paraminfo_tests.py tests/proofreadpage_tests.py tests/protectbot_tests.py tests/pwb/ tests/pwb_tests.py tests/python_tests.py tests/reflinks_tests.py tests/replacebot_tests.py tests/script_tests.py tests/site_detect_tests.py tests/tests_tests.py tests/timestamp_tests.py tests/timestripper_tests.py tests/thread_tests.py tests/tk_tests.py tests/tools_chars_tests.py tests/tools_ip_tests.py tests/tools_tests.py tests/ui_options_tests.py tests/upload_tests.py tests/uploadbot_tests.py tests/weblib_tests.py tests/weblinkchecker_tests.py tests/wikibase_edit_tests.py tests/wikidataquery_tests.py tests/wikistats_tests.py tests/xmlreader_tests.py
16:35:10   /home/jenkins/workspace/tox-jessie$ /home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/bin/flake8 docs/conf.py ez_setup.py generate_user_files.py pwb.py pywikibot/__init__.py pywikibot/backports.py pywikibot/bot.py pywikibot/bot_choice.py pywikibot/botirc.py pywikibot/comms/ pywikibot/compat/ pywikibot/config2.py pywikibot/daemonize.py pywikibot/data/ pywikibot/date.py pywikibot/diff.py pywikibot/echo.py pywikibot/editor.py pywikibot/exceptions.py pywikibot/family.py pywikibot/flow.py pywikibot/interwiki_graph.py pywikibot/families/ pywikibot/fixes.py pywikibot/i18n.py pywikibot/logentries.py pywikibot/logging.py pywikibot/login.py pywikibot/page.py pywikibot/pagegenerators.py pywikibot/plural.py pywikibot/proofreadpage.py pywikibot/site_detect.py pywikibot/site.py pywikibot/textlib.py pywikibot/throttle.py pywikibot/titletranslate.py pywikibot/tools/ pywikibot/userinterfaces/ pywikibot/version.py pywikibot/weblib.py pywikibot/xmlreader.py scripts/__init__.py scripts/add_text.py scripts/basic.py scripts/blockpageschecker.py scripts/blockreview.py scripts/capitalize_redirects.py scripts/category.py scripts/category_redirect.py scripts/claimit.py scripts/clean_sandbox.py scripts/commonscat.py scripts/coordinate_import.py scripts/cosmetic_changes.py scripts/create_categories.py scripts/data_ingestion.py scripts/delete.py scripts/disambredir.py scripts/djvutext.py scripts/editarticle.py scripts/fixing_redirects.py scripts/flickrripper.py scripts/harvest_template.py scripts/illustrate_wikidata.py scripts/image.py scripts/imagerecat.py scripts/imageuncat.py scripts/listpages.py scripts/login.py scripts/maintenance/__init__.py scripts/maintenance/make_i18n_dict.py scripts/misspelling.py scripts/newitem.py scripts/noreferences.py scripts/pagefromfile.py scripts/patrol.py scripts/piper.py scripts/protect.py scripts/replace.py scripts/selflink.py scripts/shell.py scripts/spamremove.py scripts/states_redirect.py scripts/template.py scripts/touch.py scripts/transferbot.py scripts/unlink.py scripts/unusedfiles.py scripts/upload.py scripts/version.py scripts/watchlist.py setup.py tests/__init__.py tests/aspects.py tests/utils.py tests/api_tests.py tests/archivebot_tests.py tests/basepage_tests.py tests/bot_tests.py tests/cache_tests.py tests/category_tests.py tests/checkimages_tests.py tests/cosmetic_changes_tests.py tests/data/ tests/data_ingestion_tests.py tests/date_tests.py tests/deletionbot_tests.py tests/disambredir_tests.py tests/djvu_tests.py tests/dry_api_tests.py tests/edit_tests.py tests/edit_failure_tests.py tests/exceptions_tests.py tests/family_tests.py tests/file_tests.py tests/flow_edit_tests.py tests/flow_tests.py tests/http_tests.py tests/i18n/ tests/interwiki_graph_tests.py tests/interwiki_link_tests.py tests/l10n_tests.py tests/link_tests.py tests/logentry_tests.py tests/mediawikiversion_tests.py tests/namespace_tests.py tests/oauth_tests.py tests/page_tests.py tests/paraminfo_tests.py tests/proofreadpage_tests.py tests/protectbot_tests.py tests/pwb/ tests/pwb_tests.py tests/python_tests.py tests/reflinks_tests.py tests/replacebot_tests.py tests/script_tests.py tests/site_detect_tests.py tests/tests_tests.py tests/timestamp_tests.py tests/timestripper_tests.py tests/thread_tests.py tests/tk_tests.py tests/tools_chars_tests.py tests/tools_ip_tests.py tests/tools_tests.py tests/ui_options_tests.py tests/upload_tests.py tests/uploadbot_tests.py tests/weblib_tests.py tests/weblinkchecker_tests.py tests/wikibase_edit_tests.py tests/wikidataquery_tests.py tests/wikistats_tests.py tests/xmlreader_tests.py 
16:35:10   unknown option 'accept-encodings' ignored
16:35:10   unknown option 'require-code' ignored
16:35:11 pywikibot/__init__.py:469:1: E303 too many blank lines (3)
16:35:33 ERROR: InvocationError: '/home/jenkins/workspace/tox-jessie/.tox/flake8-docstrings-mandatory/bin/flake8 docs/conf.py ez_setup.py generate_user_files.py pwb.py pywikibot/__init__.py pywikibot/backports.py pywikibot/bot.py pywikibot/bot_choice.py pywikibot/botirc.py pywikibot/comms/ pywikibot/compat/ pywikibot/config2.py pywikibot/daemonize.py pywikibot/data/ pywikibot/date.py pywikibot/diff.py pywikibot/echo.py pywikibot/editor.py pywikibot/exceptions.py pywikibot/family.py pywikibot/flow.py pywikibot/interwiki_graph.py pywikibot/families/ pywikibot/fixes.py pywikibot/i18n.py pywikibot/logentries.py pywikibot/logging.py pywikibot/login.py pywikibot/page.py pywikibot/pagegenerators.py pywikibot/plural.py pywikibot/proofreadpage.py pywikibot/site_detect.py pywikibot/site.py pywikibot/textlib.py pywikibot/throttle.py pywikibot/titletranslate.py pywikibot/tools/ pywikibot/userinterfaces/ pywikibot/version.py pywikibot/weblib.py pywikibot/xmlreader.py scripts/__init__.py scripts/add_text.py scripts/basic.py scripts/blockpageschecker.py scripts/blockreview.py scripts/capitalize_redirects.py scripts/category.py scripts/category_redirect.py scripts/claimit.py scripts/clean_sandbox.py scripts/commonscat.py scripts/coordinate_import.py scripts/cosmetic_changes.py scripts/create_categories.py scripts/data_ingestion.py scripts/delete.py scripts/disambredir.py scripts/djvutext.py scripts/editarticle.py scripts/fixing_redirects.py scripts/flickrripper.py scripts/harvest_template.py scripts/illustrate_wikidata.py scripts/image.py scripts/imagerecat.py scripts/imageuncat.py scripts/listpages.py scripts/login.py scripts/maintenance/__init__.py scripts/maintenance/make_i18n_dict.py scripts/misspelling.py scripts/newitem.py scripts/noreferences.py scripts/pagefromfile.py scripts/patrol.py scripts/piper.py scripts/protect.py scripts/replace.py scripts/selflink.py scripts/shell.py scripts/spamremove.py scripts/states_redirect.py scripts/template.py scripts/touch.py scripts/transferbot.py scripts/unlink.py scripts/unusedfiles.py scripts/upload.py scripts/version.py scripts/watchlist.py setup.py tests/__init__.py tests/aspects.py tests/utils.py tests/api_tests.py tests/archivebot_tests.py tests/basepage_tests.py tests/bot_tests.py tests/cache_tests.py tests/category_tests.py tests/checkimages_tests.py tests/cosmetic_changes_tests.py tests/data/ tests/data_ingestion_tests.py tests/date_tests.py tests/deletionbot_tests.py tests/disambredir_tests.py tests/djvu_tests.py tests/dry_api_tests.py tests/edit_tests.py tests/edit_failure_tests.py tests/exceptions_tests.py tests/family_tests.py tests/file_tests.py tests/flow_edit_tests.py tests/flow_tests.py tests/http_tests.py tests/i18n/ tests/interwiki_graph_tests.py tests/interwiki_link_tests.py tests/l10n_tests.py tests/link_tests.py tests/logentry_tests.py tests/mediawikiversion_tests.py tests/namespace_tests.py tests/oauth_tests.py tests/page_tests.py tests/paraminfo_tests.py tests/proofreadpage_tests.py tests/protectbot_tests.py tests/pwb/ tests/pwb_tests.py tests/python_tests.py tests/reflinks_tests.py tests/replacebot_tests.py tests/script_tests.py tests/site_detect_tests.py tests/tests_tests.py tests/timestamp_tests.py tests/timestripper_tests.py tests/thread_tests.py tests/tk_tests.py tests/tools_chars_tests.py tests/tools_ip_tests.py tests/tools_tests.py tests/ui_options_tests.py tests/upload_tests.py tests/uploadbot_tests.py tests/weblib_tests.py tests/weblinkchecker_tests.py tests/wikibase_edit_tests.py tests/wikidataquery_tests.py tests/wikistats_tests.py tests/xmlreader_tests.py'
16:35:33 ___________________________________ summary ____________________________________
16:35:33 ERROR:   flake8: commands failed
16:35:33 ERROR:   flake8-py3: commands failed
16:35:33 ERROR:   flake8-docstrings-mandatory: commands failed
16:35:33 Build step 'Execute shell' marked build as failure
16:35:34 Archiving artifacts
16:35:36 Archiving artifacts
16:35:36 Finished: FAILURE

The actual issues are completely hidden within the noise, and are also mostly duplicates:

16:33:25 ./pywikibot/__init__.py:469:1: E303 too many blank lines (3)
16:34:13 ./tests/wikibase_tests.py:187:5: E303 too many blank lines (2)
16:34:22 ./pywikibot/__init__.py:469:1: E303 too many blank lines (3)
16:35:04 ./tests/wikibase_tests.py:187:5: E303 too many blank lines (2)
16:35:11 pywikibot/__init__.py:469:1: E303 too many blank lines (3)

Details

Related Gerrit Patches:
pywikibot/core : masterColourise tox flake8 output

Event Timeline

valhallasw raised the priority of this task from to Needs Triage.
valhallasw updated the task description. (Show Details)
valhallasw added projects: Pywikibot, Jenkins.
valhallasw added a subscriber: valhallasw.
Legoktm set Security to None.
XZise added a subscriber: XZise.Nov 3 2015, 7:59 PM

The duplicates are because we have flake8 for Python 2 (flake8) and Python 3 (flake8-py3) and a set of more strict rules (flake8-docstrings-mandatory). And for example pywikibot/__init__ is tested by all while tests/wikibase_tests is not tested by flake8-docstrings-mandatory (which is only working on specific files and tus the different output in line 5).

And with regarding having the results hidden in the output, this is due to 7a35ea9 (T87169) as that runs multiple tests in one suite. So without that patch you would still have the duplicates but separated over multiple runs.

So I'm not sure what can be done here. Integration could actually fix the issue that it does not run tests for non-whitelisted users, althoug just running the “jenkins” environment seems sensible to me. Then pywikibot changes how it runs the tests (but that could only apply to duplicates). And maybe the implementation for tox should have some way to show the results at the end instead with the other output.

valhallasw@maeglin:pywikibot-core$ grep consoleText -P -e ':\d+:\d+:\s[A-Z]+[0-9]+' | sed -e 's:^./::' | sort | uniq
pywikibot/__init__.py:469:1: E303 too many blank lines (3)
tests/wikibase_tests.py:187:5: E303 too many blank lines (2)

Change 262696 had a related patch set uploaded (by John Vandenberg):
Colourise flake8 output

https://gerrit.wikimedia.org/r/262696

jayvdb added a subscriber: jayvdb.Jan 6 2016, 12:19 PM

To help alleviate the problem, I've created a flake8 plugin to allow ANSI escape sequences using \e , so that the errors can be highlighted in the jenkins log.
https://pypi.python.org/pypi/flake8-format-ansi

To see it working: https://integration.wikimedia.org/ci/job/tox-jessie/3225/console

jayvdb added a comment.Jan 9 2016, 3:07 AM

The pep8 job in operations/puppet has a lovely report of the problems; e.g. https://integration.wikimedia.org/ci/job/operations-puppet-pep8/5347/violations/

Dzahn added a subscriber: Dzahn.EditedJan 12 2016, 11:33 PM

currently we are getting this on each change in ops/puppet:

operations-puppet-tox-pep8 FAILURE in 2s (non-voting)

due to:

23:25:04 **ERROR: unknown environment 'pep8'

example https://integration.wikimedia.org/ci/job/operations-puppet-tox-pep8/45/console

currently we are getting this on each change in ops/puppet:
operations-puppet-tox-pep8 FAILURE in 2s (non-voting)
due to:

23:25:04 **ERROR: unknown environment 'pep8'

example https://integration.wikimedia.org/ci/job/operations-puppet-tox-pep8/45/console

I suspect that is related to T114887

Xqt added a subscriber: Xqt.Jun 11 2016, 9:10 AM
Krinkle renamed this task from jenkins output is unreadable to Jenkins output for pywikibot job is hard to read.Mar 29 2017, 4:47 PM

I came across console output that for some reason hasn't the ascii escape sequences interpreted, making the output even harder to read: https://integration.wikimedia.org/ci/job/phabricator-jessie-diffs/870/console

e.g.

11:20:56 using tox-2.5.0 from /usr/local/lib/python2.7/dist-packages/tox/__init__.pyc
11:20:56 flake8 create: /srv/jenkins-workspace/workspace/phabricator-jessie-diffs/.tox/flake8
11:20:56   /srv/jenkins-workspace/workspace/phabricator-jessie-diffs/.tox$ /usr/bin/python -m virtualenv --python /usr/bin/python flake8 >/srv/jenkins-workspace/workspace/phabricator-jessie-diffs/.tox/flake8/log/flake8-0.log
11:21:00 flake8 installdeps: flake8

Change 395483 had a related patch set uploaded (by Dalba; owner: Dalba):
[pywikibot/core@master] Migrate from flake8-putty to flake8-per-file-ignores

https://gerrit.wikimedia.org/r/395483

Xqt triaged this task as Lowest priority.Jan 27 2018, 2:01 PM