RhodeCode Enterprise 5.15.0 Release Notes

Release Date

  • 2026-10-21

New Features

  • Repository files: added a collapsible file-tree sidebar with lazy directory loading, repository ref selection, quick file navigation, and independently scrolling file and directory panes.

  • Pull requests: added explicit dependencies between pull requests. Open dependencies block merging, while automatically detected stacked pull requests are filtered by repository permissions.

  • Pull requests: target branches can now be changed safely from the edit flow. Reviewer rules and approvals are recalculated for the new target without losing manually assigned reviewer reasons.

  • Pull requests: added controls to create a pull request as Draft and to switch an existing pull request between Draft and Ready states. Draft state is shown consistently in pull request pages and lists and blocks merging.

  • Full-text search: RhodeCode Tools 4.7.0 adds safe --prune-dry-run and --prune actions for removing Elasticsearch data belonging to repositories that are no longer eligible for indexing.

General

  • Dependencies: upgraded aiohttp to 3.14.3, cryptography to 50.0.0, mistune to 3.3.3, tornado to 6.5.8, and WebOb to 1.8.11.

  • VCS Server: removed the dulwich runtime dependency and replaced its remaining Git transport and protocol helpers with pygit2 and native implementations.

  • VCS Server: upgraded pygit2 to 1.20.1 with libgit2 1.9.7 compatibility and raised the minimum supported Python version to 3.11.

  • RhodeCode Tools: upgraded to 4.7.0, including compatibility with Click 8.3.3 and safer index-lock lifecycle handling.

  • Documentation: updated obsolete support, translation, license, and documentation links and removed the legacy license-conversion flow.

Security

  • Comments API: draft comments are now visible only to their authors in single-comment and repository-comment endpoints.

  • Comments: draft ownership is now enforced for API and web edit, delete, resolve, and history operations. Comment history entries must belong to the comment identified by the request.

  • Compare: target repositories now require explicit read permission before compare processing or VCS object transfer, preventing disclosure through cross-repository comparisons.

  • Pull requests: automatically detected dependencies no longer reveal pull requests or repositories that the current user cannot read.

Fixes

  • Repository files: preserved multi-line and list line anchors such as #L10-20 and #L5,8 when scrolling the independently scrollable code pane.

  • Repository refs: fixed clone URL protocol switching on Tags, Branches, and Bookmarks pages.

  • Mercurial: fixed repository strip branch detection while preserving the existing Git fallback branch naming.

  • Git: preserved raw non-UTF-8 paths and stable RPC values after the pygit2 upgrade.

  • Full-text search: repository removal now uses Elasticsearch delete-by-query, verifies that no documents remain, and safely aborts pruning when the live repository inventory is incomplete.

  • Celery: scoped database sessions are now cleaned up on successful, failed, retried, and revoked task paths, with bounded diagnostics for cleanup failures.

  • Database health checks: failures are handled as best-effort diagnostics and no longer mask task results.

Upgrade notes

  • RhodeCode 5.15.0 is a scheduled feature release.

  • Install RhodeCode Tools 4.7.0 together with this release. Review a --prune-dry-run result before using --prune against a production Elasticsearch index.

  • VCS Server now requires Python 3.11 or newer and uses pygit2 1.20.1/libgit2 1.9.7. Rebuild custom VCS Server environments instead of reusing binary dependencies from an older installation.

  • The new Celery database-session cleanup is defense in depth; it does not compensate for an undersized database. Size database capacity, Gunicorn workers and threads, Celery concurrency, and SQLAlchemy pools as one connection budget, leaving an operational reserve for administration and monitoring.

  • Pull request dependency support includes a database migration. Run the standard RhodeCode database migration before starting the upgraded application.

  • If rcstack is used, upgrade rcstack together with the RhodeCode 5.15.0 application image.