py3: conditionalize test-flagprocessor.t on Python 3.8
For reasons I don't understand, Python 3.8 is outputting a different
lint in the traceback than prior Pythons.
The lines in question are:
flagutil.addflagprocessor(
REVIDX_NOOP, (noopdonothingread, noopdonothing, validatehash,)
)
Python <3.8 prints the 2nd line but 3.8 the first line. Perhaps Python
changed its traceback logic to always print the first line of a
multiple line expression?
Whatever the case, with this change, the test now passes on
Python 3.8.
Differential Revision: https://phab.mercurial-scm.org/D7945
--- a/tests/test-flagprocessor.t Sat Jan 18 10:21:45 2020 -0800
+++ b/tests/test-flagprocessor.t Sat Jan 18 10:12:41 2020 -0800
@@ -204,7 +204,8 @@
File "*/mercurial/extensions.py", line *, in _runextsetup (glob)
extsetup(ui)
File "*/tests/flagprocessorext.py", line *, in extsetup (glob)
- REVIDX_NOOP, (noopdonothingread, noopdonothing, validatehash,)
+ flagutil.addflagprocessor( (py38 !)
+ REVIDX_NOOP, (noopdonothingread, noopdonothing, validatehash,) (no-py38 !)
File "*/mercurial/revlogutils/flagutil.py", line *, in addflagprocessor (glob)
insertflagprocessor(flag, processor, flagprocessors)
File "*/mercurial/revlogutils/flagutil.py", line *, in insertflagprocessor (glob)