Commit graph

30 commits

Author SHA1 Message Date
Miss Islington (bot)
e3fbcc3eac
[3.15] gh-149496: Fix MacOSTest.test_default regression when BROWSER env var is set (GH-149579) (#149745)
gh-149496: Fix MacOSTest.test_default regression when BROWSER env var is set (GH-149579)

gh-149496: Fix MacOSTest.test_default failing when BROWSER env var is set

MacOSTest.test_default calls webbrowser.get() and asserts it returns a
MacOS instance. When BROWSER is set in the environment (e.g. BROWSER=open,
a common macOS workaround for the old osascript-based implementation),
register_standard_browsers() registers a GenericBrowser as the preferred
browser instead, causing the assertion to fail.

This is a regression introduced in gh-137586, which added MacOSTest and
moved test_default into it from MacOSXOSAScriptTest. MacOSXOSAScriptTest
had an identical setUp() guard added in gh-131254 specifically to fix this
same failure. The guard was not carried over to MacOSTest.

Add setUp() to MacOSTest to unset BROWSER for the duration of each test,
restoring the isolation that was already established as the correct pattern
for macOS webbrowser tests.
(cherry picked from commit 45c47d26c2)

Co-authored-by: Jeff Lyon <146767590+secengjeff@users.noreply.github.com>
2026-05-12 21:25:21 +00:00
Jeff Lyon
aeb02ac42b
gh-137586: Replace 'osascript' with 'open' on macOS in webbrowser (#146439)
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Gregory P. Smith <greg@krypto.org>
2026-05-06 16:56:17 +03:00
Stan Ulbrych
d22922c8a7
gh-148169: Fix webbrowser %action substitution bypass of dash-prefix check (#148170) 2026-04-13 19:02:52 +00:00
Fionn
a0c57a8d17
gh-137586: Open external osascript program with absolute path (GH-137584)
Open web browser with absolute path

On macOS, web browsers are opened via popen calling osascript. However,
if a user has a colliding osascript executable earlier in their PATH,
this may fail or cause unwanted behaviour.

Depending on one's environment or level of paranoia, this may be considered a security vulnerability.

Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2026-04-06 09:42:10 -07:00
Łukasz Langa
3681d47a44
gh-143930: Tweak the exception message and increase test coverage (GH-146476) 2026-04-03 17:31:25 +02:00
Seth Michael Larson
82a24a4442
gh-143930: Reject leading dashes in webbrowser URLs 2026-03-20 14:47:13 +00:00
Savannah Ostrowski
40096da95a
GH-139946: Colorize error and warning messages in argparse (#140695)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2025-11-04 16:31:35 +00:00
Hugo van Kemenade
328a778db8
gh-134357: Remove unused imports in tests (#134340) 2025-05-25 20:09:02 +00:00
Bénédikt Tran
9b6cef0f5d
gh-131254: ensure that BROWSER is not set for test_webbrowser on macOS (#131276) 2025-03-16 15:39:30 +01:00
Min RK
96492785b2
gh-128540: lookup default webbrowser on macOS (#130535)
Ensure web browser is launched by `webbrowser.open` on macOS, even for `file://` URLs.
2025-03-14 02:51:15 -04:00
jianghuyiyuan
46f5a4f9e1
Fix typos in docs, error messages and comments (#122502)
Signed-off-by: jianghuyiyuan <shuangcui@live.com>
2024-08-01 00:26:09 +00:00
Kirill Podoprigora
8123c34faa
gh-117923: Catch `test_webbrowser.test_parse_args_error` stderr output (#117924) 2024-04-17 10:25:05 +03:00
Hugo van Kemenade
56ed979d04
gh-68583: webbrowser: replace getopt with argparse, add long options (#117047) 2024-04-13 08:56:56 -06:00
Russell Keith-Magee
f006338017
gh-114099: Additions to standard library to support iOS (GH-117052)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Malcolm Smith <smith@chaquo.com>
Co-authored-by: Ned Deily <nad@python.org>
2024-03-28 03:59:33 -04:00
Steve Dower
c63c6142f9
gh-114272: Fix or skip tests that fail due to spaces in paths (GH-114451) 2024-01-25 00:38:34 +00:00
Ronald Oussoren
ca8b1d0958
gh-87277: Don't look for X11 browsers on macOS in webbrowser (#24480)
The installation of XQuartz on macOS will unconditionally
set the $DISPLAY variable. The X11 server will be launched
when a program tries to access the display.  This results
in launching the X11 server when using the webbrowser module,
even though X11 browsers won't be used in practice.
2023-12-21 14:43:38 +01:00
Steve Dower
fd1947ecfb
bpo-44844: Enable detection of Microsoft Edge browser in webbrowser module (GH-29908) 2023-04-04 17:00:03 +01:00
James De Bias
b0422e140d
gh-102871: Remove obsolete browsers from webbrowser (#102872) 2023-03-31 11:02:47 -04:00
Christian Heimes
8464fbc42e
bpo-40280: Skip subprocess-based tests on wasm32-emscripten (GH-30615) 2022-01-25 08:09:06 +01:00
Nikita Sobolev
d12bec6993
bpo-43424: Deprecate webbrowser.MacOSXOSAScript._name attribute (GH-30241) 2021-12-30 10:30:13 +09:00
Hai Shi
79bb2c93f2
bpo-40275: Use new test.support helper submodules in tests (GH-21743) 2020-08-06 13:51:29 +02:00
Hai Shi
4660597b51
bpo-40275: Use new test.support helper submodules in tests (GH-21448) 2020-08-03 18:49:18 +02:00
Zhiming Wang
8c281ed403 bpo-35308: Fix regression where BROWSER env var is not respected. (GH-10693)
Regression introduced in e3ce695 and 25b804a, where the old parameter
update_tryorder to _synthesize was first ignored, then given the opposite
value in the attempt to fix bpo-31014.
2018-11-26 23:29:45 +02:00
Serhiy Storchaka
25b804a9c2
bpo-31014: Fix the webbrowser module. (GH-7267)
webbrowser._synthesize() called webbrowser.register() with
outdated signature.

Co-Authored-By: John Still <john@jmsdvl.com>
2018-07-08 10:22:32 +03:00
Bumsik Kim
3cf1f154ed bpo-34019: Fix wrong arguments for Opera Browser (#8047)
The Opera Browser was using a outdated command line invocation that resulted in an incorrect URL being opened in the browser when requested using the webbrowser module.

* Correct the arguments passed to the Opera Browser when opening a new URL.
2018-07-03 12:30:06 +01:00
Serhiy Storchaka
a7cba27aea bpo-29645: Speed up importing the webbrowser module. (#484) 2017-03-08 17:15:54 +02:00
Nick Coghlan
56a8eccc43 bpo-24241: Add dedicated webbrowser.register test case (#288) 2017-02-25 18:14:07 +10:00
Serhiy Storchaka
c9b750d249 Issue #23262: The webbrowser module now supports Firefox 36+ and derived
browsers.  Based on patch by Oleg Broytman.
2016-10-30 19:16:33 +02:00
Benjamin Peterson
e8c8a592e7 fix duplicate test name (closes #19126) 2013-09-29 10:48:19 -04:00
R David Murray
3561901cd9 #15557,#15447,#15509: webbrowser test suite added.
Initial patch by Anton Barkovsky, refined a bit by me to further subdivide the
test methods.  Provides tests for the previous two bug fix commits.
2012-09-03 12:52:08 -04:00