[go: up one dir, main page]

Skip to content

Tags

Tags give the ability to mark specific points in history as being important
  • v2.7.0

    protected
    Release Lorry version: v2.7.0
    
    9395e6e Bump lorry version to 2.7.0
    647f42d Support the old style configuration source
    5bf1a36 Bump gitlab version to 0.1801.0
    2bda48c Clean up dependencies
    c8c0354 Identify git server port dynamically
    62e12d6 Update documentation for configuration sources
    ccae539 Improve the tests in read_config.rs
    9ffca93 Update ci to run the e2e script
    23e93ed Update ci to run the e2e script
    30d49ae WIP
    35cff9e use vars directly in println! and format! macros
    b319396 Bump rust version in build image to 1.88.0
    629d3d7 Add lint for missing ref-patterns
    642e74c Add cleanup.sh
    6b5d2ba Add an e2e test for notifications.
    63d2818 Drop unused errors table
    b3a4539 Use the status column instead of the exit code to determine failed lorries
    5e4b4af Change Lorry to support loading multiple configuration sources
    3b1952a Remove unused run_checks script
    6ea4775 Remove a pointless module
    
  • v2.6.1

    protected
    Release Lorry version: v2.6.1
    
    Lorry 2.6.1 contains no changes other than a fix to the version of rust that is used to build the container.
    
    c93ce9b Bump lorry version to 2.6.1
    cffaf17 Bump rust version in the build image
    
  • v2.6.0

    protected
    6091273b · Bump versoin to 2.6 ·
    Release Lorry version: v2.6.0
    
    Lorry 2.6.0 includes several changes, including:
    - Internal changes, such as refactors to backoff mechanisms, testing frameworks, dependency updates
    - Email notifications on local downstreams
    - Updates to logging set up (log lines now refer to mirrors they're performing)
    - A version flag
    - Consistent way that lorry set the destinations for the raw file mirrors (see
    https://gitlab.com/CodethinkLabs/lorry/lorry2/-/issues/208)
    
    6091273 Bump versoin to 2.6
    5afeb4c Do not ignore the last path component if it matches the file name
    18b30d7 Add a lorry version flag
    59891f8 UI Warning for pulling only tags from upstream
    d772a1b Add git-config enum to docs and example
    af2da42 Include url in LFS Importer status code
    ded144f Update documentation
    378b12f Use spans for annotation and improve logging setup
    7505bff Simplify backoff for config reader
    ef4cea0 Add a TestBuilder
    284f414 Let clippy lint all targets
    fbf8562 Update sqlx
    f15a2fd Update build container script
    1ee4bf8 Box a large err variant in enum
    bec886e Apply cargo clippy --fix
    83ee3ed Update cargo dependencies
    67c030f Enable smtp on local downstreams
    3890f90 Add gitlab templates for issues and MRs
    
  • v2.5.0

    protected
    Release Lorry version: v2.5.0
    
    Big thank you to @f-george for helping with this release
    
    The notable changes in this release are:
    - Empty directories are now cleaned up correctly when working with raw files.
    Previously, if was possible to "trick" lorry into considering a mirror successful
    if the last part of the path matches the filename. This has been fixed now.
    - Notification threshold fix. Notifications now work correctly.
    Keep in mind, that deploying this change will wipe all the current (likely broken)
    notification failure counts, which means that there will be issued a one-time notification
    for all broken mirrors after startup.
    - ls-remote and set-head git operation now can be performed via the git binary.
    - The confgit token (if set through confgit) should now be set via the `[config-source]`
    configuration block. The old `gitlab-private-confgit-token{-file}` works, but is deprecated.
    
    c3cc278 Update version to 2.5
    69bc64e Rewrite config source token configuration
    b3ae01a Update README and CHANGELOG
    6f87bbf Fix scheduler block
    fd0bdb0 Add a Git Binary for get_head
    753922e Rework the notification threshold system
    e59c2b2 Cleanup empty directories for raw-file mirrors
    bf96f38 Compare SHA for FileEntry
    7bce0f9 Introduce binary/git2 switching for remote
    2325620 Add a Git Binary for ls-remote
    e156131 Match gitlab service
    2fb9dd0 bump gitlab to 0.1708.2 reduce ApiError matches
    
  • v2.4.1

    protected
    Release Lorry version: v2.4.1
    
    2.4.0 introduced a regression in how lorry selects tokens when both
    confgit token and a regular gitlab otken are supplied. This release
    fixes that regression.
    
    b8bb375 Lorry 2.4.1 preparation
    1330da3 Fix confgit token override
    
  • v2.4.0

    protected
    Release Lorry version: v2.4.0
    
    Thank you @Tikooh and @coldtom for helping with this release!
    
    Two main changes to this release are:
    - Local downstream
    
    It is now possible to set a location on disk for lorry to mirror to. You
    can configure it by setting
    ```
    [downstream]
    kind = "local"
    base-dir = "./mirrors"
    ```
    in your configuration.
    
    - Database refactor
    
    This change also contains some tweaks to the lorry database schema to
    make it more lean and reliable
    
    5f1aecd Update package version to 2.4.0
    b597021 Normalize the lorries <=> jobs relation in the database
    5ce6008 Disable broken referer header reqwest
    6987e01 Add E2e for local downstream
    5bf650e Test try_local_mirror and parse case
    29915e0 Prevent raw file mirrors from local downstream
    9c49b1c Support local downstream in main and load_confgit
    2adf782 Update UrlBuilder and Scheduler tests
    094dcb6 Add File builder to UrlBuilder
    aaf1106 Refactor UrlBuilder with builder and Tokenbuilder
    df87228 Implement downstream
    c859a7b Add Local downstream into config with verification
    4890820 Add Local Downstream to lorry example and docs
    c4710de Update scripts to use env
    15e1a99 Add tracing debug logs for command execute
    d68b3ce Add a validator check for long paths
    2e8f89e Add test for default branch on workspace
    5aa4f1b Set the default branch of a workspace
    72928f2 Change SmtpSecruity to SmtpSecurity
    0ffc572 Default configuration enum values
    
  • v2.3.0

    protected
    Release Lorry version: v2.3.0
    
    Many thanks to @Tikooh for helping with this release!
    
    This release contains various changes to configuration
    options that lorry uses to configure downstream (many
    of those changes are made in preparation for reenabling of local
    downstream), as well as changes to e2e tests, cleanup in the database,
    multiarch Docker images and fixes to token leaks in logs and web UI.
    
    Deprecation notice:
    
    Config fields `hostname`, `username`, `insecure`,
    `gitlab-private-token` and `gitlab-private-token-file` are deprecated
    in favor of a `[downstream]` block of `kind = "gitlab"`. Make sure
    your config looks like this:
    
    ```
    [downstream]
    kind = "gitlab"
    hostname = "localhost:9999"
    username = "Oauth2"
    gitlab-insecure-http = false
    gitlab-private-token = "super-secret"
    ```
    
    You can find documentation for configuration here:
    https://lorry.software/configuration.html
    
    1268656 Update package versions to 2.3.0
    1a93079 Drop unused databases
    61f343d Enable container builds for multiple architectures
    261c712 Cargo sqlx prepare changes
    10ad93c Fix Lorry prepare repo to reset priority
    2ebe06f Lorry validation fix
    911faa6 Add a ci step to validate local config
    ae8e254 Add Remote Confgit retry attempts
    3ed65ed Improve e2e tests
    472cdb3 Also check that file exists on example config
    cd986fb Separate config parse
    0d7a08c Fix token leakage on command execution
    478d47f Mention nix flake in the docs
    5d9b8ba Update git server version
    e302655 Improve release script
    b67ae04 Redact web outputs
    72c6da4 Add an error if project path is too long
    fd3fcfb Report error on internal git failure
    506b2d6 Make scheduler take URL builder
    4bb6c75 Update lorry.example.toml and docs for downstream
    d5f2209 Deprecate Gitlab specific config for enum
    21dd768 Improve tracing to include config
    
  • v2.2.1

    protected
    Release Lorry version: v2.2.1
    
    This is a maintenance release that fixes package versions picked up by our CI after release of v2.2.0.
    
    This release contains no changes to the behaviour of lorry.
    
    36301ff Update lorry to 2.2.1
    
  • v2.2.0

    protected
    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
    
  • v2.1.0

    protected
    Release Lorry version: v2.1.0
    
    New release of Lorry with several months of work. Going forward we will be
    switching to a bi-weekly release cycle as development work increases.
    
    Notable improvements include:
    
    Pagination for all iterable UI items
    SMTP Notifications
    Refspec parsing improvements
    Lots of code cleanup
    New Failed Lorry UI
    Validation of Lorry path names
    
    New contributors (Welcome!):
    
    George @Tikooh
    Harry Hudson (@harryhudson)
    
    304d8af Delete Count SQL queries
    096833f Add a simple release script
    6646b5a Add Pagination to lorries and jobs
    36088c2 Fix renaming of explicit vs implicit file names
    27f5a61 Remove dead code Downstream Setup
    4f92615 Revert mistaken config change
    0ba55a4 Replace custom Interval type with time::Duration
    f61839c Implement SMTP notifications in Lorry
    0e8eebd Improve scripts
    b5de2d1 Replace async convert with constructor method
    b6a6deb Refactor utils crate into lorry & workerlib
    a896671 (Fix #134) validate downstream GitLab Lorry paths
    c8da102 Refactor state_db
    6a998ad Let workerlib use the gitcredentials file
    721f8c9 Update e2e test dependencies
    0d1a3c7 Update rust dependencies
    338ceff Bump gitlab version 17.2 -> 17.8
    48284ed Apply cargo clippy --fix
    5892e95 Bump rust version 1.82 -> 1.84
    93ec789 Refactor & delete dead code
    88b8e3d Improve refspec parsing to be more like git
    5b460c7 Remove dead code from the comms module
    57f37a9 Document token strategy in the example config file
    0454dba Refactor UrlBuilder to always accept a username
    4ed2203 Add a url builder test
    3f88000 Add support for a token file
    3193921 Change the navigation link from 'failed lorries' to 'failed'
    ae72892 Prevent panics when allocating new jobs
    8ea2f85 Add index of job ids for refs table
    2b0d33b Fix (#145) add INDEX to DB column warnings.job_id
    943ccc6 Fix (#127) Add failed lorries page & retry-all
    8c70c22 Fix Lorry with SELinux on local instance
    6e0ae89 Improve docs for mod web & minor restyle
    5442ab1 Update changelog for 2.0 release
    b1837c7 Cleanup rust source files
    4a22f97 Combine downstream (gitlab & local) errors
    f5a5a82 Switch Local module error from Box to enum
    3a15b73 Switch Gitlab module error from Box to enum (#135)
    4ba5347 Fix run_gitlab.sh script quote escaping
    47230ee Add troubleshooting documentation for Lorry
    
  • v2.0.1

    protected
    Release v2.0.1
    
    No new functionality but updates the build image to use Rust 1.82.0.
  • v2.0.0

    protected
    Release Lorry 2.0
    
    This is the first release of Lorry 2.0 which has been mostly re-written from
    the ground up. More details can be found at [lorry.software](https://lorry.software).
    
    * Replaced distributed architecture with a monolithic thread based system
    * Re-wrote the work directory to use a single on-disk copy of bare git repositories
    * Re-wrote raw-file support entirely and added SHA256SUM verficiation
    * Added individual ref monitoring
    * Added a glob based "negative" refspec field for ignoring refs
    * Made the git binary configurable
    * Introduced limited support for using libgit2 for cloing operations
    * Added 10s of new tests
    * Added a standalone Git server for testing purposes
    * Cleaned up Gitlab CI considerably
    * Added linter support for Lorry
    * Fixed leakage of sensitive Gitlab tokens
    * Added a new UI interface
    * Added various Prometheus alerting implementations
    * Various database schema/design improvements
  • v2.0.0-rc.1

    protected
    v2.0.0-rc.1
    
    This is the first release of Lorry 2.0 which has been mostly re-written from
    the ground up. More details can be found at [lorry.software](https://lorry.software).
    
    * Replaced distributed architecture with a monolithic thread based system
    * Re-wrote the work directory to use a single on-disk copy of bare git repositories
    * Re-wrote raw-file support entirely and added SHA256SUM verficiation
    * Added individual ref monitoring
    * Added a glob based "negative" refspec field for ignoring refs
    * Made the git binary configurable
    * Introduced limited support for using libgit2 for cloing operations
    * Added 10s of new tests
    * Added a standalone Git server for testing purposes
    * Cleaned up Gitlab CI considerably
    * Added linter support for Lorry
    * Fixed leakage of sensitive Gitlab tokens
    * Added a new UI interface
    * Added various Prometheus alerting implementations
    * Various database schema/design improvements