-
sofarr v1.7.8
StableCreate Release / release (push) Successful in 30sCI / Security audit (push) Successful in 2m9sBuild and Push Docker Image / build (push) Successful in 2m18sCI / Swagger Validation & Coverage (push) Successful in 2m36sCI / Tests & coverage (push) Successful in 3m15sreleased this
2026-05-23 20:53:21 +01:00 | 97 commits to main since this releasesofarr v1.7.8
Docker
docker pull docker.i3omb.com/sofarr:1.7.8Changes
- merge branch 'develop' into 'main' - Release v1.7.8
- chore: bump version to 1.7.8 and update CHANGELOG
Downloads
- Source (tar.gz): sofarr-v1.7.8.tar.gz
- Source (zip): sofarr-v1.7.8.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.8
Downloads
-
sofarr v1.7.7
StableCreate Release / release (push) Successful in 22sBuild and Push Docker Image / build (push) Successful in 2m3sCI / Security audit (push) Successful in 1m56sCI / Tests & coverage (push) Successful in 2m28sCI / Swagger Validation & Coverage (push) Successful in 2m21sreleased this
2026-05-23 20:38:39 +01:00 | 99 commits to main since this releasesofarr v1.7.7
Docker
docker pull docker.i3omb.com/sofarr:1.7.7Changes
- merge branch 'develop' into 'main' - Release v1.7.7
- chore: bump version to 1.7.7 and update CHANGELOG
- ci: use RELEASE_TOKEN for Gitea Container Registry authentication
- ci: publish Docker container image to Gitea Package Registry in parallel
Downloads
- Source (tar.gz): sofarr-v1.7.7.tar.gz
- Source (zip): sofarr-v1.7.7.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.7
Downloads
-
sofarr v1.7.6
StableCreate Release / release (push) Successful in 23sBuild and Push Docker Image / build (push) Successful in 1m35sCI / Tests & coverage (push) Successful in 2m46sCI / Security audit (push) Successful in 1m41sCI / Swagger Validation & Coverage (push) Successful in 2m22sreleased this
2026-05-23 18:55:46 +01:00 | 103 commits to main since this releasesofarr v1.7.6
Docker
docker pull docker.i3omb.com/sofarr:1.7.6Changes
- merge branch 'develop' into 'main' - Release v1.7.6
- fix: resolve rate-limiting and Ombi requests caching bugs (fixes #42, fixes #43)
Downloads
- Source (tar.gz): sofarr-v1.7.6.tar.gz
- Source (zip): sofarr-v1.7.6.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.6
Downloads
-
sofarr v1.7.5
StableBuild and Push Docker Image / build (push) Successful in 43sCreate Release / release (push) Successful in 54sCI / Security audit (push) Successful in 1m48sCI / Tests & coverage (push) Successful in 2m41sCI / Swagger Validation & Coverage (push) Successful in 2m30sreleased this
2026-05-23 10:14:15 +01:00 | 105 commits to main since this releasesofarr v1.7.5
Docker
docker pull docker.i3omb.com/sofarr:1.7.5Changes
- merge branch 'develop' into 'main' - Release v1.7.5
- chore: bump version to 1.7.5 and update CHANGELOG
- fix(ombi): retrieve and include settings ID in webhook enable payload (resolves #41)
Downloads
- Source (tar.gz): sofarr-v1.7.5.tar.gz
- Source (zip): sofarr-v1.7.5.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.5
Downloads
-
sofarr v1.7.4
StableBuild and Push Docker Image / build (push) Successful in 46sCreate Release / release (push) Successful in 52sCI / Swagger Validation & Coverage (push) Successful in 2m53sCI / Security audit (push) Successful in 1m34sCI / Tests & coverage (push) Successful in 3m21sreleased this
2026-05-23 10:01:24 +01:00 | 108 commits to main since this releasesofarr v1.7.4
Docker
docker pull docker.i3omb.com/sofarr:1.7.4Changes
- merge branch 'develop' into 'main' - Release v1.7.4
- chore: bump version to 1.7.4 and update CHANGELOG
- fix(ombi): register ombiRoutes in production server entry point (resolves #40)
Downloads
- Source (tar.gz): sofarr-v1.7.4.tar.gz
- Source (zip): sofarr-v1.7.4.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.4
Downloads
-
sofarr v1.7.3
StableBuild and Push Docker Image / build (push) Successful in 57sCI / Security audit (push) Successful in 1m50sCI / Tests & coverage (push) Successful in 2m3sCI / Swagger Validation & Coverage (push) Successful in 1m40sCreate Release / release (push) Successful in 15sreleased this
2026-05-23 09:45:55 +01:00 | 111 commits to main since this releasesofarr v1.7.3
Docker
docker pull docker.i3omb.com/sofarr:1.7.3Changes
- merge branch 'develop' into 'main' - Release v1.7.3
- chore: bump version to 1.7.3 and update CHANGELOG
- fix(ui): add brand icons and type badges to download client filter dropdown (resolves #39)
- fix: resolve download client filter element ID mismatch and bind Select All/Deselect All (closes #38)
- fix: add missing copyright header to ombiHelpers.js
- docs: align swagger spec and README with Ombi features and blocklist eligibility (closes #37)
- fix: resolve multi-instance capability in proxy routes (fixes #33)
- fix: optimize polling parallelism and resolve redundant SABnzbd requests (fixes #35, fixes #36)
- Fix #34: Allow non-admins to use blocklist-search under qualifying conditions
- Delete directory '.windsurf/skills/gitea-interaction'
- Delete directory '.agents/rules'
- Update .gitignore
- feat: add Gitea CLI integration rules and interaction skill documentation
- fix: remediate audited defects (resolves #29, #30, #31, #32)
- test: remediate test suite, enable skipped frontend/SSE tests, and add comprehensive unit tests
- feat: Add Ombi request filtering and search
- fix: secure webhook config endpoint and validate config on Ombi enable/test
- fix: add common webhook config check for SOFARR_BASE_URL and SOFARR_WEBHOOK_SECRET
- Handle Ombi API object-format requestedUser field
- test: comprehensive test coverage for Ombi webhook changes
- feat: add Ombi requests tab and webhook panel integration
- Merge pull request 'feat(swagger): Add Swagger API reference, and fixes' (#28) from develop into main
- Fix: Generate Ombi links directly from TMDB ID; show on downloads and history for all users
- fix: add arrType field to history items for admin icon display
- Fix: Add missing await before buildUserDownloads in SSE endpoint to resolve icon display issues
- fix: make buildUserDownloads async to resolve test failures
- test: add comprehensive test suite for Ombi integration
- feat(ombi): Add Ombi PALDRA integration for request management
- fix: replace client-side Swagger server detection with server-side dynamic spec
- feat: replace static Swagger UI server selector with dynamic client-side detection
- fix: resolve test failures - add missing emby route and fix YAML syntax errors
- feat: add automated RAML 1.0 package generation to CI/CD pipeline
- feat(ci): add RAML 1.0 package generation pipeline
- fix(ci): allow Python-2.0 licence in licence-check
- chore(release): bump version to 1.7.0
- fix(swagger): use merged spec for integration-notes check
- fix(swagger): adjust coverage test for test environment
- fix(swagger): convert coverage test to ES modules
- docs(swagger): document Swagger UI and hybrid approach
- ci(swagger): add OpenAPI validation job to CI
- test(swagger): add coverage validation test
- docs(swagger): add JSDoc @openapi for public health endpoints
- docs(swagger): add JSDoc @openapi for proxy routes
- docs(swagger): add JSDoc @openapi for webhook endpoints
- docs(swagger): add JSDoc @openapi for status and history endpoints
- docs(swagger): add JSDoc @openapi for dashboard endpoints
- docs(swagger): add JSDoc @openapi for auth endpoints
- feat(swagger): mount Swagger UI at /api/swagger
- feat(swagger): add central OpenAPI 3.1 specification file
- feat(swagger): create develop-swagger branch and install dependencies
Downloads
- Source (tar.gz): sofarr-v1.7.3.tar.gz
- Source (zip): sofarr-v1.7.3.zip
- Docker image:
docker.i3omb.com/sofarr:1.7.3
Downloads
-
sofarr v1.6.0
Stablereleased this
2026-05-21 11:56:16 +01:00 | 161 commits to main since this releasesofarr v1.6.0
Docker
docker pull docker.i3omb.com/sofarr:1.6.0Changes
- Release v1.6.0
- chore: bump version to 1.6.0, update CHANGELOG and ARCHITECTURE docs
- Merge pull request 'fix: remove client/ from .dockerignore to fix Docker client-build stage' (#27) from develop-refactor into develop-refactor2
- Fix CSRF token and currentUser references in api.js
- Fix blocklist CSRF token reference error
- Add client-side logging to blocklist button for debugging
- Add logging to blocklist-search endpoint for debugging
- Fix progress calculation to support both mbleft and mbmissing fields
- Fix missing progress bar for SABnzbd downloads
- Fix background fetch to not overwrite cache with empty data
- Fix status route test paths
- Fix inconsistent speed formatting in download updates
- Fix status route path to avoid 404
- Fix logout button by using state object references
- Add error display for status panel failures
- Fix history pagination and status panel issues
- docs(ARCHITECTURE): update to reflect develop-refactor2 changes
- Add comprehensive tests for staged history loading
- Add client-side handler for history-update SSE events
- Implement staged history loading with SSE push
- Fix status button ID mismatch - use status-btn instead of status-toggle
- Increase history pageSize from 100 to 500 to fetch more records
- Add logging for total Sonarr/Radarr records fetched
- Add logging for filtered event types and missing series/movie objects
- Add detailed logging for all series/movies with raw tag IDs to debug missing items
- Add debugging logs for history filtering to diagnose missing series
- Fix tab selection - use data-tab attribute instead of missing IDs
- fix: update test to reflect that unmatched torrents should not be displayed
- Exclude public directory from copyright header check
- Add file details to copyright header check failure output
- Improve license check to output failing package names
- Fix: Remove unmatched torrents from download display
- Fix CSP violations and ignoreAvailable reference error
- ci: trigger rebuild with .dockerignore fix
- fix: remove client/ from .dockerignore to fix Docker client-build stage
- fix: remove client/ from .dockerignore to fix Docker client-build stage
- Add frontend unit tests with Vitest + jsdom
- Extract matching logic into new DownloadMatcher service
- Add JSDoc comments and defensive error handling to DownloadBuilder.js
- refactor: Complete technical debt remediation - final cleanup
- refactor: Complete technical debt remediation (all steps)
- Extract createClientLogo helper to eliminate 2× client-logo duplication
- Extract renderTagBadges helper to eliminate 4x tag-badge rendering duplication
- Migrate frontend from monolithic app.js to vanilla ES modules
- refactor: extract status route and WebhookStatus service, slim dashboard.js
- Refactor: Deduplicate download assembly logic into DownloadBuilder service
- Add guard test for DownloadBuilder service
- Extract DownloadAssembler service from dashboard routes
- Refactor: Extract tag functions to TagMatcher service
- fix: limit history pagination to prevent 40s response times
- test: add integration and unit tests for dashboard, emby, sonarr, radarr, sabnzbd routes
- Merge pull request 'fix: use stable *arr IDs for matching before fragile title fallback' (#21) from fix-arr-matching into develop-merge
- Merge pull request 'fix: webhook replay cache atomicity and instanceName precision' (#22) from fix-webhook-receiver into develop-merge
- Merge pull request 'fix: QBittorrent fallback state corruption after full sync' (#23) from fix-qbittorrent-client into develop-merge
- Merge pull request 'fix: SABnzbd speed assignment and size/progress parsing' (#24) from fix-sabnzbd-client into develop-merge
- Merge pull request 'fix: full pagination + non-silent errors in PollingRadarrRetriever' (#25) from fix-radarr-retriever into develop-merge
- Merge pull request 'fix: full pagination + non-silent errors in PollingSonarrRetriever' (#26) from fix-sonarr-retriever into develop-merge
- fix: use stable *arr IDs for matching before fragile title fallback
- fix: webhook replay cache atomicity and instanceName precision
- fix: QBittorrent fallback state corruption after full sync
- fix: SABnzbd speed assignment and size/progress parsing
- fix: full pagination + non-silent errors in PollingRadarrRetriever
- fix: full pagination + non-silent errors in PollingSonarrRetriever
Downloads
- Source (tar.gz): sofarr-v1.6.0.tar.gz
- Source (zip): sofarr-v1.6.0.zip
- Docker image:
docker.i3omb.com/sofarr:1.6.0
Downloads
-
sofarr v1.5.5
StableLicence Check / Licence compatibility and copyright header verification (push) Successful in 1m8sCreate Release / release (push) Successful in 41sBuild and Push Docker Image / build (push) Successful in 21sDocs Check / Markdown lint (push) Successful in 32sCI / Security audit (push) Successful in 1m13sCI / Tests & coverage (push) Failing after 1m24sDocs Check / Mermaid diagram parse check (push) Successful in 1m49sreleased this
2026-05-20 01:13:59 +01:00 | 224 commits to main since this releasesofarr v1.5.5
Docker
docker pull docker.i3omb.com/sofarr:1.5.5Changes
- Update CHANGELOG for v1.5.5
- Bump version to 1.5.5
- Add speed formatting to display appropriate units (KB/s, MB/s)
- Add logging to debug active download identification and speed
- Apply overall SABnzbd speed to active download only
- Remove speed from SABnzbd downloads - API doesn't provide per-download speed
- Add logging to debug SABnzbd speed field in slot data
- Add logging to investigate SABnzbd slot structure for speed field
- Hide speed when it is 0 to avoid displaying misleading 0 speed
- Fix missing speed on SAB cards and remove incorrect missing pieces display
- Reduce card logo size to 32x32
- Fix logo positioning by adding position: relative to download-card
- Move card logo to bottom right with absolute positioning, fix duplication
- Fix duplicate icon and user tag on page reload by adding class and duplicate check
- Increase download client logo size in cards to 64x64px (4x), keep filter picker at 20x20px
- Fix duplicate user tag and logo in download cards by removing old elements before updating
- Add download client logo to download card with right-side positioning
- Update rtorrent.svg logo
- Add download client logos to filter UI with fallback handling
- Fix filtering to use both client type and instanceId for unique identification
- Use index-based unique identifiers for download client selection to prevent cross-selection
- Fix duplicate checkbox ID issue causing cross-selection between clients
- Fix double-toggling issue in download client filter
- Update ARCHITECTURE.md, bump version to 1.5.4, add CHANGELOG entry
- Add multi-select download client filter with client type display
- Fix SABnzbd size and speed fields in SSE response
- Add download client ordering and filtering to active downloads list
Downloads
- Source (tar.gz): sofarr-v1.5.5.tar.gz
- Source (zip): sofarr-v1.5.5.zip
- Docker image:
docker.i3omb.com/sofarr:1.5.5
Downloads
-
sofarr v1.5.3
StableBuild and Push Docker Image / build (push) Successful in 28sCreate Release / release (push) Successful in 6sDocs Check / Markdown lint (push) Successful in 56sLicence Check / Licence compatibility and copyright header verification (push) Successful in 46sDocs Check / Mermaid diagram parse check (push) Successful in 1m31sCI / Security audit (push) Successful in 1m50sCI / Tests & coverage (push) Successful in 1m55sreleased this
2026-05-19 23:11:47 +01:00 | 251 commits to main since this releasesofarr v1.5.3
Docker
docker pull docker.i3omb.com/sofarr:1.5.3Changes
- Update CHANGELOG.md with 1.5.2 and 1.5.3; update README.md version reference
- Merge branch 'develop'
- Bump version to 1.5.3
- Fix webhooks panel: hide on app load to sync with status panel
- Fix status panel: remove innerHTML wipe that destroys status-content div
- Fix undefined --background CSS variable causing blank status panel
- Fix status card regression: revert webhooks-section to sibling structure
- debug: Add DOM structure verification to trace missing contentDiv
- debug: Add more detailed logging to renderStatusPanel
- debug(ui): Add visible styling and debug logging for status panel
- fix(ui): Add loading state and min-height for status-content
- fix(ui): Add status-content container to preserve webhooks panel
- fix(ui): Integrate webhooks panel into status panel
- fix(pagination): Increase Sonarr/Radarr page sizes to fetch all items
- debug: Add Sonarr queue titles to no-match output
- fix(matching): Match SAB to Sonarr by downloadId first
- debug(matching): Show queue vs history source and history titles
- fix(matching): Check Sonarr/Radarr history for SAB matches
- debug(sonarr): Log all available Sonarr queue fields
- fix(matching): Normalize dots to spaces for SAB/Sonarr matching
- debug(sse): Add detailed name matching logging
- debug(sse): Add SAB matching stats to trace filtering
- fix(sabnzbd): Handle labels as array or string
- fix(downloads): Fix SABnzbd/qBittorrent collision and webhook metrics
- fix(retrievers): Use unique key to prevent Sonarr/Radarr collision
- fix(status): Check actual webhook config, show enabled even with 0 events
- debug(sse): Add detailed logging for download matching
- fix(webhooks): Load collapsed by default, add webhook metrics to status panel
- refactor(webhooks): Integrate webhooks panel into status card
- fix(webhooks): Send full notification object to test endpoint
- fix(webhooks): Use numeric method value (1=POST) in notification payload
- fix(webhooks): Use SONARR_INSTANCES/RADARR_INSTANCES config for notification routes
- debug(webhooks): Add console.error logging to Sonarr/Radarr notification routes
- fix(webhooks): Show webhooks panel only to admin users
- fix(webhooks): Restore original vanilla JS app and add webhooks panel properly
Downloads
- Source (tar.gz): sofarr-v1.5.3.tar.gz
- Source (zip): sofarr-v1.5.3.zip
- Docker image:
docker.i3omb.com/sofarr:1.5.3
Downloads
-
sofarr v1.5.2
Stablereleased this
2026-05-19 20:27:26 +01:00 | 286 commits to main since this releasesofarr v1.5.2
Docker
docker pull docker.i3omb.com/sofarr:1.5.2Changes
- Merge branch 'develop'
- v1.5.2: Build and deploy React client with Webhooks Configuration panel
- feat(webhooks): display webhook statistics (events received, polls skipped, last event) in status panel
- Merge branch 'develop' into main — release 1.5.1
- Merge hotfix: webhook routing + version 1.5.1
- Merge branch 'develop' into main — release 1.5.0a
- Merge branch 'develop' into main — release 1.5.0
- Merge branch 'develop' Implements PDCA feature
- Merge branch 'main' of https://git.i3omb.com/Gandalf/sofarr
- Merge develop: Add MIT copyright headers
- Merge pull request 'fix: documentation update' (#15) from develop into main
- Merge branch 'develop'
- release: v1.3.0
Downloads
- Source (tar.gz): sofarr-v1.5.2.tar.gz
- Source (zip): sofarr-v1.5.2.zip
- Docker image:
docker.i3omb.com/sofarr:1.5.2
Downloads