RhodeCode Enterprise 5.13.0 Release Notes¶
Release Date¶
2026-08-05
New Features¶
SSH: added
ssh.executable.git_ext_config, extra server-sidegit -coptions appended to theupload-pack/receive-packcommand run by the ssh-wrapper. The default caps pack memory (pack.threads,pack.windowMemory,pack.deltaCacheSize,core.bigFileThreshold) so a single large clone or fetch can no longer grow the git child process to several GB and OOM the host under concurrency. The option is exposed and documented in the production and development ini templates; set it empty to disable the caps.
General¶
Celery: prefork workers now dispose SQLAlchemy connections inherited from the parent process on worker start, and cleanly remove the session and dispose the engine pool on worker shutdown.
VCSServer: dropped the remaining dulwich call sites from the git backend;
get_descriptionnow reads the control-dir file directly and the unusedGIT_LINKconstant was removed.Dependencies: upgraded aiohttp to 3.14.1, bleach to 6.4.0, click to 8.3.3, greenlet to 3.5.0, idna to 3.15, mako to 1.3.12, mistune to 3.3.0, msgpack to 1.2.1, pyasn1 to 0.6.4, soupsieve to 2.8.4, tornado to 6.5.7, urllib3 to 2.7.0, webob to 1.8.10, zope.interface to 8.4 and zope.event to 6.2.
Dependencies: bumped rhodecode-tools to 4.6.0, markupsafe to 3.0.3 in the docs requirements, and pinned pipdeptree to 4.1.0 across CE, EE and VCSServer.
Tests: the gunicorn-backed test server now disposes DB connections inherited from the arbiter in a
post_forkhook and disables worker recycling, removing a source of random 500s during VCS operation tests.
Security¶
Dependencies: upgraded cryptography from 46.0.7 to 48.0.1 (GHSA-537c-gmf6-5ccf). The PyPI wheels statically link OpenSSL, and every release through 48.0.0 bundled a copy with a network-reachable out-of-bounds read (CWE-125, CVSS 7.5, availability impact only). 48.0.1 recompiles the wheels against OpenSSL 4.0.1; no library code changed.
Fixes¶
pull-request: the close-branch-before-merging check now reads
edition_idfromrhodecode.CONFIGinstead of the Pyramid registry, which is not populated in Celery task-reachable code. Merges running as async tasks no longer skip the EE close-branch behaviour.vcsserver/git: fixed
add_object, which built a dulwichBlobbut ran against a libgit2 repository and raisedAttributeErroron every call; it now usesrepo.create_blob.celery: disposing inherited connections on worker start prevents “MySQL server has gone away” and “Commands out of sync” errors caused by shared-socket corruption after forking; disposing the pool on shutdown prevents
Aborted_clientsentries in MySQL when workers are recycled viamax_tasks_per_child.
Upgrade notes¶
RhodeCode 5.13.0 is a scheduled feature release.
SSH git operations now run with conservative pack-memory caps by default. The default is applied through
sanitize_settings_and_apply_defaults, so existing installs get the caps without editing their ini file. Servers with plenty of RAM and cores that see a throughput regression on large clones should raisessh.executable.git_ext_configvalues, or set the option to an empty string to restore the previous unbounded behaviour.Celery deployments: workers now dispose inherited database connections on start. No configuration change is required, but deployments that relied on
max_tasks_per_childworkarounds for connection errors can drop them.