Issue is ready for manual inspection; leaving it open.
## Implementation update
Implemented release-aware self-update for #25.
## What changed
- Added `GET /api/control/update-check` to query the configured latest-release API and compare it with the running `IMPORTARR_VERSION`.
- Changed `POST /api/control/update` so it performs the same release check and only runs `IMPORTARR_UPDATE_COMMAND` when a newer release tag is available.
- Added configurable `IMPORTARR_UPDATE_RELEASE_URL` and `IMPORTARR_UPDATE_CHECK_TIMEOUT_SECONDS` settings.
- Documented the new API behavior and covered current/newer-release paths in tests.
## Branch and commit
- Branch: `25-self-update-options-repo-versions`
- Commit: `8a3929f` (`Add release-aware self update #25`)
## Verification
- `.venv/bin/pytest` — 41 passed, 1 existing Starlette/httpx deprecation warning.
## Result
Issue is ready for manual inspection; leaving it open.
daniels
added the ready label 2026-07-29 20:36:40 +02:00
## UI follow-up
Added a screenshot-inspired self-update prompt to the Importarr UI.
## What changed
- Added a top-bar update banner that appears when `/api/control/update-check` reports a newer release.
- Shows the latest version, current version, and an `Update now` button.
- The button calls `POST /api/control/update`, then refreshes/hides the banner based on the API response.
- Checks once on page load and then hourly.
- Added CSS styling with the orange update accent and mobile wrapping.
## Main commit
- `7be54f9` (`Show self-update availability in UI #25`)
## Verification
- `.venv/bin/python -m pytest` — 43 passed, 1 existing Starlette/httpx deprecation warning.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Repo probably needs to create releases
Implementation update
Implemented release-aware self-update for #25.
What changed
GET /api/control/update-checkto query the configured latest-release API and compare it with the runningIMPORTARR_VERSION.POST /api/control/updateso it performs the same release check and only runsIMPORTARR_UPDATE_COMMANDwhen a newer release tag is available.IMPORTARR_UPDATE_RELEASE_URLandIMPORTARR_UPDATE_CHECK_TIMEOUT_SECONDSsettings.Branch and commit
25-self-update-options-repo-versions8a3929f(Add release-aware self update #25)Verification
.venv/bin/pytest— 41 passed, 1 existing Starlette/httpx deprecation warning.Result
Issue is ready for manual inspection; leaving it open.
Main push update
Pushed the #25 implementation to
main.96f077e(Add release-aware self update #25).venv/bin/pytest tests/test_queue_controls.py— 11 passed.UI follow-up
Added a screenshot-inspired self-update prompt to the Importarr UI.
What changed
/api/control/update-checkreports a newer release.Update nowbutton.POST /api/control/update, then refreshes/hides the banner based on the API response.Main commit
7be54f9(Show self-update availability in UI #25)Verification
.venv/bin/python -m pytest— 43 passed, 1 existing Starlette/httpx deprecation warning.