Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docs/updates/2026-10.md
Original file line number Diff line number Diff line change
Expand Up @@ -632,3 +632,8 @@ Index and query commands: [README.md](README.md). New entries go at the end.
## U-20261011-01 · 2026-10-11 · Repair stable release security and browser checks · #done #ci

Require HTTPS for native basic auth except explicit loopback test servers; reject credentials embedded in navigation URLs. Parse comparison messages with bounded string operations and upgrade the locked urllib3 release to 2.8.0. Remove changing page geometry from the legacy live-site smoke check. Review HTML escaping, lazy import allowlists and test-only security findings with targeted explanations. Native auth, hostile report values, parsing and lazy exports pass 48 focused tests. The full CI unit-test scope passes 4875 tests (2 skipped, 67 subtests passed).


## U-20261011-02 · 2026-10-11 · Make Firefox option smoke failures fail CI · #done #ci

Pass argument lists to the WebdriverManager API instead of Selenium Options objects. Remove the startup exception handler that incorrectly reported API errors as successful skips, verify both real Firefox drivers exist, and always close them. Validate against the five supported Python versions in the browser CI matrix.
3 changes: 2 additions & 1 deletion docs/updates/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ In the same commit: delete the item from `progress.md`, add a `#done` entry here

| ID | Date | Title | Tags | Batch |
|---|---|---|---|---|
| U-20261011-02 | 2026-10-11 | Make Firefox option smoke failures fail CI | #done #ci | [2026-10](2026-10.md) |
| U-20261011-01 | 2026-10-11 | Repair stable release security and browser checks | #done #ci | [2026-10](2026-10.md) |
| U-20261008-01 | 2026-10-08 | The CLI exits 1 when the run failed; reports go below TestPioneer's artifact directory | #feature #cli #report #testpioneer | [2026-10](2026-10.md) |
| U-20261001-53 | 2026-10-01 | The publish jobs build with the locked setuptools instead of downloading the newest | #ci #security #X-13 | [2026-10](2026-10.md) |
Expand Down Expand Up @@ -144,5 +145,5 @@ In the same commit: delete the item from `progress.md`, add a `#done` entry here

| File | Period | Entries |
|---|---|---:|
| [2026-10.md](2026-10.md) | 2026-10 | 56 |
| [2026-10.md](2026-10.md) | 2026-10 | 57 |
| [2026-09.md](2026-09.md) | 2026-09 | 25 |
Original file line number Diff line number Diff line change
@@ -1,23 +1,16 @@
import sys
"""Exercise manager browser arguments with real Firefox; failures must fail CI."""

from je_web_runner import get_webdriver_manager
from je_web_runner import set_webdriver_options_argument

webdriver_manager = get_webdriver_manager(
"firefox", options=["--headless", "--disable-extensions"]
)
try:
webdriver_manager = get_webdriver_manager(
"firefox",
options=set_webdriver_options_argument("firefox", ["--disable-extensions"]),
)
except Exception as error: # pylint: disable=broad-except
print(f"webdriver_with_options skipped: cannot start firefox ({error!r})", file=sys.stderr)
sys.exit(0)

try:
webdriver_manager.new_driver(
"firefox",
options=set_webdriver_options_argument("firefox", ["--headless"]),
)
if webdriver_manager.current_webdriver is None:
raise RuntimeError("Initial Firefox driver was not created")
webdriver_manager.new_driver("firefox", options=["--headless"])
if webdriver_manager.current_webdriver is None:
raise RuntimeError("Second Firefox driver was not created")
print("webdriver_with_options: both Firefox drivers started successfully")
finally:
webdriver_manager.quit()
except Exception as error: # pylint: disable=broad-except
print(repr(error), file=sys.stderr)
sys.exit(1)
Loading