Release Lorry version: v2.2.0 Many thanks to Ilya Savitsky and George Lo (Tikooh) for their contributions! This release covers the previous month of development work which was extended beyond our normal release cycle of 2 weeks due to a few unexpected bugs. Some highlights include: Selective ref pulling Previously Lorry would pull all sources from remotes and selectively track refs into it's downstream repository. Now Lorry pulls exactly what is requested of it in the configuration. Maintenance jobs Lorry now runs git-fsck and git-gc periodically which will clean up temporary files, optimize disk usage, and perform consistency checking on all mirrors. The main Lorry controller file will now load from any of the following files: lorry-controller.conf lorry-controller.json lorry-controller.yml lorry-controller.yaml Several new tests have been added and e2e tests have been completely revamped and now run considerably faster. Various SQLite query improvements making database calls much faster and less likely to cause locking issues. New benchmarking tools that help facilitate testing huge volumes (10k+) of mirrors. Deprecation notices: The following config flags are now deprecated in Lorry and will be removed in a future release: configuration-directory confgit-url confgit-branch confgit-update-period You should update your config to use the new [config-source] field which you can find documentation for here: https://lorry.software/configuration.html 3a32607 Move remote configuration into enum 597fc66 Introduce remote-ls selective ref pulling a6cb241 Allow different file names in lorry-configuration 17ae4a6 Improve config resolution to minimize queries and use transactions. aa3ad36 Only replace first occurance of substring in spec match 31acf32 Cleanup git-server and add benchmarking documentation 5e39dd8 Improve add_to_lorries database call to use only a single query 92b10a8 Add a sync package version script a1ea6d7 Better error reporting on failed download errors 13cda6f Add job_maintenance index da691e3 Add to lock config reader bd3fb27 Move the db write lock to the top of the poller loop dc647d6 Fix SQLITE 513 BUSY SNAPSHOT error 79f616e Missed documrntation sync d3ba42a Add an e2e test on example config 581b6a7 Change maintenance interval to be configurable in Lorry config 69b3719 Add the concept of JobKind and implement Git Gc and Git Fsck operations 03c85d2 Add a broken http/2 e2e test d817be5 Add sync_config_example script and CI 003c9e5 Doc changes to config and installation 528c54d Clip the Lorry path length in UI 84cf79c Make confgit able to use a separate token ccdfc7b Add an alert threshold 3e3a20f Only allow HTTP/1.1 or HTTP/2 in Lorry configuration, default to HTTP/1.1 5f2436e . c7aa3d5 Only build an MR container if manually requested cbfa16e Clean up confgit module ac3e7ce Add a link to the spec from the lorry screen 9e3cdf6 Add unit tests for preparing missing repos 189d286 Update create_parent_group function 7f61d95 Add raw file e2e tests b58d840 Add the ability to specify http-version 2deb462 Add run_e2e.sh and documentation on how to run it bbae4a4 Remove old integration tests cb0c0c5 Add new integration tests 22a35a4 Bump rust workerlib version to 2.1.0 cc89226 Split prepare-repo function f87e4df Add Last-Modified header test 984157b Convert download to use reqwest instead of curl acd5d20 Refactor url_builder.rs to be more sane f90654b Bump version of lorry package 143e4d1 Increase pagination limit a2f9377 Update docs