bpo-31014: webbrowser._synthesize
calls webbrowser.register
with outdated signature · Pull Request #2689 · python/cpython (original) (raw)
Tonight while running the test suite I noticed the following two errors with the tests for the webbrowser
module:
======================================================================
ERROR: test_get (test.test_webbrowser.ImportTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/jms/projects/forks/cpython/Lib/test/test_webbrowser.py", line 290, in test_get
webbrowser.get('fakebrowser')
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 42, in get
register_standard_browsers()
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 567, in register_standard_browsers
cmd = _synthesize(cmdline, -1)
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 116, in _synthesize
register(browser, None, controller, update_tryorder)
TypeError: register() takes from 2 to 3 positional arguments but 4 were given
======================================================================
ERROR: test_register (test.test_webbrowser.ImportTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/jms/projects/forks/cpython/Lib/test/test_webbrowser.py", line 277, in test_register
webbrowser.register('Example1', ExampleBrowser)
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 26, in register
register_standard_browsers()
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 567, in register_standard_browsers
cmd = _synthesize(cmdline, -1)
File "/home/jms/projects/forks/cpython/Lib/webbrowser.py", line 116, in _synthesize
register(browser, None, controller, update_tryorder)
TypeError: register() takes from 2 to 3 positional arguments but 4 were given
----------------------------------------------------------------------
After a little bit of digging I discovered that webbrowser_synthesize
is using an old call signature for webbrowser.register. This PR should fix that. I believe this is the only place the change in function signature was either affected or not updated.