diff --git a/CHANGELOG.md b/CHANGELOG.md index 06e5466..9dd068c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,11 @@ All notable changes to RigDoctor are recorded here. Format follows (`MAJOR.MINOR.PATCH`, pre-1.0). `__version__` and `pyproject.toml` must match the git release tag (so the auto-updater, D18, can compare versions). +## [0.2.0] - 2026-05-21 +### Added +- **"Check for updates" button** in the sidebar — force an immediate version check instead of + waiting for the 30-minute poll. + ## [0.1.1] - 2026-05-21 ### Fixed - Dialogs (the update prompt and changelog) were light-on-light and unreadable — they now use diff --git a/pyproject.toml b/pyproject.toml index 282a045..3021590 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "rigdoctor" -version = "0.1.1" +version = "0.2.0" description = "Modular hardware monitoring & crash diagnostics for Linux gamers." readme = "README.md" requires-python = ">=3.11" diff --git a/src/rigdoctor/__init__.py b/src/rigdoctor/__init__.py index 23519c1..3744a94 100644 --- a/src/rigdoctor/__init__.py +++ b/src/rigdoctor/__init__.py @@ -1,3 +1,3 @@ """RigDoctor — modular hardware monitoring & crash diagnostics for Linux gamers.""" -__version__ = "0.1.1" +__version__ = "0.2.0" diff --git a/src/rigdoctor/gui/main_window.py b/src/rigdoctor/gui/main_window.py index 81a6904..02656b1 100644 --- a/src/rigdoctor/gui/main_window.py +++ b/src/rigdoctor/gui/main_window.py @@ -134,6 +134,11 @@ class MainWindow(QMainWindow): changelog_btn.setCursor(Qt.CursorShape.PointingHandCursor) changelog_btn.clicked.connect(self._show_changelog) v.addWidget(changelog_btn) + check_btn = QPushButton("Check for updates") + check_btn.setObjectName("LinkButton") + check_btn.setCursor(Qt.CursorShape.PointingHandCursor) + check_btn.clicked.connect(self._manual_check) + v.addWidget(check_btn) # Update state (filled in by the background check). self._update_label = QLabel("checking for updates…") @@ -189,6 +194,12 @@ class MainWindow(QMainWindow): self._update_label.setText("update failed") self._update_btn.setEnabled(True) + def _manual_check(self) -> None: + if self._applied: + return + self._update_label.setText("checking for updates…") + self._start_update_check() + def _start_update_check(self) -> None: threading.Thread(target=self._check_updates, daemon=True).start()