Release version 1.1.11
Some checks failed
ci / tests (push) Has been cancelled
ci / detect-release (push) Has been cancelled
ci / publish-image (push) Has been cancelled
ci / tag-stable (push) Has been cancelled

This commit is contained in:
Kevin Veen-Birkenbach
2026-02-14 15:03:35 +01:00
parent 5d4a2d59db
commit 7ecb26cc92
4 changed files with 14 additions and 4 deletions

View File

@@ -1,3 +1,8 @@
## [1.1.11] - 2026-02-14
* This release improves matomo-bootstrap installer resilience by adding robust setupSuperUser field and button detection to prevent intermittent bootstrap failures.
## [1.1.10] - 2026-02-14 ## [1.1.10] - 2026-02-14
* This release fixes a reproducible Playwright navigation race in the Matomo installer (setupSuperUser), hardens the Next/Continue flow, and adds integration tests for transient locator errors and progress detection without a visible Next button. * This release fixes a reproducible Playwright navigation race in the Matomo installer (setupSuperUser), hardens the Next/Continue flow, and adds integration tests for transient locator errors and progress detection without a visible Next button.

View File

@@ -20,7 +20,7 @@
rec { rec {
matomo-bootstrap = python.pkgs.buildPythonApplication { matomo-bootstrap = python.pkgs.buildPythonApplication {
pname = "matomo-bootstrap"; pname = "matomo-bootstrap";
version = "1.1.10"; # keep in sync with pyproject.toml version = "1.1.11"; # keep in sync with pyproject.toml
pyproject = true; pyproject = true;
src = self; src = self;

View File

@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "matomo-bootstrap" name = "matomo-bootstrap"
version = "1.1.10" version = "1.1.11"
description = "Headless bootstrap tooling for Matomo (installation + API token provisioning)" description = "Headless bootstrap tooling for Matomo (installation + API token provisioning)"
readme = "README.md" readme = "README.md"
requires-python = ">=3.10" requires-python = ">=3.10"

View File

@@ -358,7 +358,10 @@ def _first_continue_to_matomo_locator(page, *, timeout_s: float = 0.2):
text_loc = page.get_by_text("Continue to Matomo", exact=False) text_loc = page.get_by_text("Continue to Matomo", exact=False)
try: try:
if _count_locator(text_loc, timeout_s=timeout_s) > 0 and text_loc.first.is_visible(): if (
_count_locator(text_loc, timeout_s=timeout_s) > 0
and text_loc.first.is_visible()
):
return text_loc.first, "text:Continue to Matomo*" return text_loc.first, "text:Continue to Matomo*"
except Exception: except Exception:
pass pass
@@ -912,7 +915,9 @@ class WebInstaller(Installer):
_fill_optional_input( _fill_optional_input(
page, FIRST_WEBSITE_NAME_SELECTORS, DEFAULT_SITE_NAME page, FIRST_WEBSITE_NAME_SELECTORS, DEFAULT_SITE_NAME
) )
_fill_optional_input(page, FIRST_WEBSITE_URL_SELECTORS, DEFAULT_SITE_URL) _fill_optional_input(
page, FIRST_WEBSITE_URL_SELECTORS, DEFAULT_SITE_URL
)
_page_warnings(page) _page_warnings(page)