git-next/CHANGELOG.md
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust 91c5973e31
All checks were successful
ci/woodpecker/pr/cron-docker-builder Pipeline was successful
ci/woodpecker/pr/push-next Pipeline was successful
ci/woodpecker/pr/tag-created Pipeline was successful
ci/woodpecker/pull_request_closed/cron-docker-builder Pipeline was successful
ci/woodpecker/pull_request_closed/push-next Pipeline was successful
ci/woodpecker/pull_request_closed/tag-created Pipeline was successful
Release Please / Release-plz (push) Successful in 3m44s
ci/woodpecker/tag/cron-docker-builder Pipeline was successful
ci/woodpecker/tag/push-next Pipeline was successful
ci/woodpecker/tag/tag-created Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
Rust / build (push) Successful in 6m16s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/cron/cron-docker-builder Pipeline was successful
ci/woodpecker/cron/push-next Pipeline was successful
ci/woodpecker/cron/tag-created Pipeline was successful
chore: release
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2024-09-14 14:24:04 +00:00

78 KiB

Changelog

All notable changes to this project will be documented in this file.

git-next-core - 0.13.11 - 2024-09-14

Added

  • should fetch repo on startup when not cloning
  • Remove branches when fetching from remote

Other

  • reimplement git fetch using git

git-next - 0.13.11 - 2024-09-14

Added

  • (tui) add time and version in border
  • should fetch repo on startup when not cloning
  • Remove branches when fetching from remote

Other

  • Update TUI sooner when receiving CI status
  • reimplement git fetch using git
  • mark tui as complete on roadmap
  • Add missing port mapping parameter for running in docker

git-next-forge-github - 0.13.10 - 2024-09-12

Added

  • optionally specify max commits between dev and main

git-next-forge-forgejo - 0.13.10 - 2024-09-12

Added

  • optionally specify max commits between dev and main

git-next-core - 0.13.10 - 2024-09-12

Added

  • optionally specify max commits between dev and main

git-next - 0.13.10 - 2024-09-12

Added

  • optionally specify max commits between dev and main

Fixed

  • (tui) make tui work from docker image
  • (tui) alerts, such as WIP aren't being reset
  • (test) tests requiring .git pass when not present
  • (tui) update ui when push next or main finishes
  • (tui) don't set background for normal repo alias

git-next - 0.13.9 - 2024-09-04

Fixed

  • (tui) alerts are cleared on next repo update
  • shutdown properly on error
  • shutdown properly on file parse error

Other

  • Expand docker docmentation

git-next-forge-forgejo - 0.13.8 - 2024-09-01

Other

  • flatten nested blocks with early returns
  • rename method as peel

git-next-core - 0.13.8 - 2024-09-01

Fixed

  • use configured branch names in user notification
  • create git graph log to after doing a fetch

Other

  • flatten nested blocks with early returns
  • rename method as peel

git-next - 0.13.8 - 2024-09-01

Added

  • improved error display when startup fails
  • (tui) clean up alert display
  • (tui) remove some borders to clean up appearance
  • (tui) make progression of branches clearer
  • (tui) remove label from repo identity widget
  • (tui) hightlight repo alias in red when in alert
  • (tui) branch names look more like 'pills'
  • (tui) highlight branchs in log
  • (tui) hightlight status message in colour
  • (tui) use moving heart emoji as liveness indicator
  • (tui) add scrolling when overflow screen
  • (tui) forge widgets only use required lines
  • (tui) repo widgets only use required lines
  • (tui) move forge alias to left and add prefix
  • (tui) remove count of forges
  • (tui) remove duplicate messages from repo body
  • (tui) highlight user interventions in red

Fixed

  • use configured branch names in user notification
  • remove unused imports
  • (tui) remove logging from inside ui loop
  • (tui) don't show HEAD in log
  • (tui) improve colour contrast on light background
  • (tui) remove unused import
  • (alert) typo in email message
  • (repo) avoid blocking threads when pausing
  • (test) give actix more time to process message
  • (test) give actix more time to process message
  • (test) give actix more time to process message
  • (tui) improve reliability of status updates
  • create git graph log to after doing a fetch
  • (tui) remove logging of tui updates

Other

  • flatten nested blocks with early returns
  • merge identical match branches
  • (tui) add regex dependency
  • (tui) introduce LogLine to wrap log formatting
  • (tui) simplify repo identity widget
  • rename method as peel
  • (tui) child widget can provide constraint to container
  • (tui) merge repo widgets into one

git-next-core - 0.13.7 - 2024-08-25

Added

  • (tui) (experimental) show repo state, messages and git log

git-next - 0.13.7 - 2024-08-25

Added

  • (tui) (experimental) show repo state, messages and git log

git-next-forge-github - 0.13.6 - 2024-08-23

Fixed

  • (github) register webhook with valid callback url

git-next-core - 0.13.6 - 2024-08-23

Added

  • (tui) (experimental) tui option

git-next - 0.13.6 - 2024-08-23

Added

  • (tui) (experimental) tui option

Fixed

  • file_watcher runs on own thread

Other

  • test all feature combinations

git-next - 0.13.5 - 2024-08-10

Added

  • make forge and repo alias more prominent in email

Fixed

  • invalid config section typo in README

git-next-forge-github - 0.13.4 - 2024-08-08

Other

  • cleanup pedantic clippy in forge-github crate

git-next-forge-forgejo - 0.13.4 - 2024-08-08

Other

  • cleanup pedantic clippy in forge-forgejo crate

git-next-core - 0.13.4 - 2024-08-08

Added

  • add short git log graph to notifications

Other

  • macros use a more common syntax
  • cleanup pedantic clippy in core crate

git-next - 0.13.4 - 2024-08-08

Added

  • add short git log graph to notifications

Fixed

  • remove dependcy on clang & mold

Other

  • macros use a more common syntax
  • cleanup pedantic clippy in core crate
  • cleanup pedantic clippy in cli crate

git-next-core - 0.13.3 - 2024-08-04

Fixed

  • shout.desktop should be optional

git-next - 0.13.3 - 2024-08-04

Fixed

  • shout.desktop should be optional

git-next - 0.13.2 - 2024-08-04

Other

  • timing test waits longer than expiry

git-next-forge-github - 0.13.1 - 2024-08-04

Other

  • remove unused dependencies

git-next-forge-forgejo - 0.13.1 - 2024-08-04

Other

  • remove unused dependencies

git-next-core - 0.13.1 - 2024-08-04

Added

  • prevent duplicate alerts
  • add support for desktop notifications

Other

  • remove unused dependencies
  • update tests to check for email config parsing

git-next - 0.13.1 - 2024-08-04

Added

  • prevent duplicate alerts
  • add support for desktop notifications

Fixed

  • add example email config to server default template

Other

  • remove unused dependencies
  • extract alerts into own actor
  • add example to readme for listen, shout & storage
  • add config details for sending emails

git-next-forge-github 0.13.0 - 2024-08-02

Added

  • [breaking] restructured server config into listen & shout sections

git-next-forge-forgejo 0.13.0 - 2024-08-02

Added

  • [breaking] restructured server config into listen & shout sections

git-next-core 0.13.0 - 2024-08-02

Added

  • send email notifications (sendmail/smtp)
  • [breaking] restructured server config into listen & shout sections
  • remove notification.type
  • [breaking] reduce the max commit dev can be ahead of main

git-next 0.13.0 - 2024-08-02

Added

  • send email notifications (sendmail/smtp)
  • [breaking] restructured server config into listen & shout sections
  • remove notification.type
  • terminate process if config file is invalid
  • return better errors to user on server failure
  • return better errors to the user on init

[0.12.1] - 2024-07-29

Bug Fixes

  • Webhook secret doesn't need to be base64 encoded (691a733)
  • Remove requirement for RUSTFLAGS to be set (e56d6a3)
  • Make default server config example valid (b7abe94)

Miscellaneous Tasks

  • Update create publishing command (bf12712)
  • Remove deprecated crates (5dc0de8)

[0.12.0] - 2024-07-28

656ec4a...b89431b

Bug Fixes

  • Don't log content of internal messages (3ae1132)

Documentation

  • Add missing readme for git-next-core (11de4ef)
  • Add missing notification config details (991d0d1)

Features

  • Support macOS (a56c6df)
  • Avoid resetting next to main when dev is ahead of main (d2ea93f)

Miscellaneous Tasks

Refactor

  • Merge server crate into cli crate (1427284)
  • Merge server-actor crate into cli crate (a679abe)
  • Merge file-watcher-crate into cli crate (9ca532a)
  • Merge file-watcher-crate into cli crate (366930b)
  • Merge webhook-actor crate into cli crate (12ecc30)
  • Merge repo-actor crate into cli crate (c1981d8)
  • Merge forge crate into cli crate (5745817)

[0.11.0] - 2024-07-26

f8fefcd...656ec4a

Bug Fixes

  • Remove unused dependecy from file-watcher-actor (b8f4ade)

Documentation

  • Document Notifications to user (1690e1b)
  • Update message graph for repo-actor (758ca5c)
  • Update package graph (768ec6a)

Features

  • Enable configuration of a webhook for receiving notifications (c86d890)
  • Support sending messages to the user (e9877ca)
  • Dispatch NotifyUser messages to server for user (1/2) (bcf57bc)
  • Dispatch NotifyUser messages to server for user (2/2) (288c20c)
  • Post webhook notifications to user (9e12f5e)

Miscellaneous Tasks

Refactor

  • Reduce cognitive complexity of WebhookNotification handler. 1/2 (06292c2)
  • Reduce cognitive complexity of WebhookNotification handler. 2/2 (c104dfe)
  • Reduce cognitive complexity of 'validate_position' (92ebd45)
  • Flag internally that dev not based on main will require used intervention (ba67b1e)
  • Extract messages and handlers modules from webhook-actor (8f95ae0)
  • Use Option<&T> over &Option (4978400)
  • Merge actor-macros into core (48c968d)
  • Merge config crate into core crate (ab728c7)
  • Merge git create into core crate (fa5fa80)

Testing

  • Restore unlinked test file (2ec5ae1)

[0.10.0] - 2024-07-16

41c8a31...f8fefcd

Bug Fixes

  • Move server-default.toml inside crate that uses it (639e561)
  • Move default.toml inside crate that uses it (e2b545a)

Documentation

  • Update installation instructions (050e117)
  • Move main README into cli crate (6981a7b)
  • Add readmes to each crate to direct users to main crate (6c92f64)
  • Add UnRegisterWebhook from RepoActor (f44865f)
  • Update link from root README to cli README (619e1d5)

Features

  • Unregister webhooks form forge during shutdown (b715755)
  • Reload server config when file is touched (33907a1)

Miscellaneous Tasks

  • Restore clean check and tag checkout to publish script (95129dd)
  • Release 0.10.0 (f8fefcd)

Build

  • Add more metadata for crates.io (69211a8)

[0.9.4] - 2024-07-14

d24bcd9...41c8a31

Bug Fixes

  • Add missing version for workspace dependencies (fa7f78c)

Miscellaneous Tasks

Revert

  • Fix: explicitly specify version in each crate (adf56c1)

[0.9.3] - 2024-07-14

59e8fc0...d24bcd9

Bug Fixes

  • Explicitly specify version in each crate (cd93d04)

Miscellaneous Tasks

[0.9.2] - 2024-07-14

4c2e122...59e8fc0

Bug Fixes

  • Typo and missing repository entry in Cargo.toml files (c289617)

Miscellaneous Tasks

[0.9.1] - 2024-07-14

43c6e81...4c2e122

Documentation

  • Server-actor: add readme showing message paths (10e6389)
  • Update changelog (4c2e122)

Miscellaneous Tasks

  • Simplify workspace.members specification (19d1f77)
  • Add license and descriptions for each crate (e410cfc)
  • Release 0.9.1 (fe23d3f)

Build

  • Add publish-to-crates-io workflow (9d11bb0)
  • Add script to publish to crates.io (0c7a060)
  • Disable broke publish workflow (0981355)

[0.9.0] - 2024-07-12

b0be0f6...43c6e81

Bug Fixes

  • Don't modify config of external repos (57a614b)

Documentation

Features

  • GitDir tracks when repo is cloned by git-next (df35244)
  • Update auth of interal repos when changed in config (9c20e78)
  • Log as an error when webhook url ends with a slash (7578ab3)
  • Perform controlled shutdown on ctrl-c (fd762e2)
  • Recheck failed status (5f36282)

Miscellaneous Tasks

  • Lint fix for Dockerfile (cbf6c3b)
  • Bump docker runtime os image (f61c556)
  • Remove unused FakeOpenRepository (d9feaea)
  • Bacon treats clippy warnings as errors (56756ca)
  • Local dev used debug logging (4252411)
  • Release 0.9.0 (43c6e81)

Refactor

  • Split git::repository::open::tests module (2e374d3)
  • Split git::repository::tests module (5ab075c)
  • Extract git::repository::factory module (4e60be6)
  • Split server storage creation out from startup (4276964)
  • Split ReceiveServerConfig handler (7212154)
  • Split messages and handlers for server-actor (681b2c4)

Build

  • Pin versions for docker base images (6bbc894)

[0.8.1] - 2024-07-05

8beef49...b0be0f6

Bug Fixes

  • Mermaid diagram syntax (99d8672)
  • Typos in mermaid diagram (209b29d)
  • Default log level is info (694135a)

Documentation

  • Update crate interdependence graph (9042005)
  • Minor updates to README (6c24a36)
  • Update installation instructions (2483e85)

Miscellaneous Tasks

  • Clean up footer of readme (007a5bd)
  • Directly re-export function and type (7b19f3b)
  • Remove unused token from github tests (c2953ad)
  • Release 0.8.1 (b0be0f6)

Refactor

  • Cli don't depend directly on git crate (3dec12d)
  • Server no longer depends directly on git crate (12849d5)

[0.8.0] - 2024-07-02

ea9a858...8beef49

Bug Fixes

  • Remove unused GitDir::into_string() function (65e9ddf)
  • Where repo config is in server should register webhook (975c9e3)
  • Github: restarting server creates duplicate webhook for repo (db90280)
  • Start validating repo after registering webhook (68005d7)
  • ReceiveRepoConfig tries to send two messages (c9efbb9)
  • Don't retry validation when non-retryable error (ae7933c)
  • Github commit should use common headers (73ab149)
  • Messages should always get delivered (83ce957)

Documentation

Features

  • Ignore github ping webhook messages (55d8ccb)
  • Load log levels from env RUST_LOG (77d35e8)

Miscellaneous Tasks

  • Remove dead code (2acc43d)
  • Remove unused Fake repo facade (8ce4528)
  • Fix name in config file (f038ab5)
  • Bacon run job runs server (880fa0c)
  • Don't treat clippy warnings as errors (7fdea29)
  • Set default logging lever back to info (d0c731f)
  • Release 0.8.0 (8beef49)

Refactor

  • Tests: expand test given modules (aa817a8)
  • Use given::a_name in config tests (b5c0f5b)
  • Merge git::branch module into git::push (c6a1d2c)
  • Git::push::reset takes all params as refs (dcd9473)
  • Rewrite git crate's mock repository (926851d)
  • Clean up eprintln use (9b97083)
  • Add newtype macro (2e71e40)
  • Start to use newtype macro (5e9f9eb)
  • Config: use newtype (ea20afe)
  • Create a RepositoryFactory trait (94ad2c4)
  • Git: use newtype (2cdaf39)
  • Forgejo: explain todo warnings (601e400)
  • Repo-actor: rewrite tests using mockall (ffab198)
  • Remove unused Forge Deref implementation (f460cd4)
  • Remove dead code (6d9eb0a)
  • Extract webhook actor (eba00a1)
  • Extract actor-macros crate (2008afa)
  • Extract file-watcher-actor crate (52d442f)
  • Server: collapse tests to base of crate (0fd3373)
  • Update macro signatures and add documentation support (717cc8b)
  • Remove dead code (32fb92f)
  • CloneRepo use actor::do_send to send LoadConfigFromRepo (c571e9e)
  • Repo-actor: RepoActorLog: replace Mutex with RwLock (3e137c6)
  • Tests: repo-actor: use methods on RepoActorLog (52df211)
  • Git: replace Mutex with RwLock in Repository (73b416e)
  • Repo-actor: replace Mutex with RwLock (8fceafc)
  • File-watcher doesn't debug log on each loop (c85eee8)
  • Only start actor system when server starts (dfc0c1d)

Testing

  • Tidy up config, forgejo and git tests (271f4ec)
  • Add more tests to git crate (588666f)
  • Make TestRepository from git crate available to other crates (be78597)
  • Use println rather then eprintln in tests (b9940cd)
  • Repo-actor: add more tests (e585b07)
  • Add more debug tracing (40c61fa)

Refactos

  • Extract server-actor crate (1131920)

[0.7.1] - 2024-06-06

c1c62e7...ea9a858

Bug Fixes

  • Github: use correct url to check CI status (46e2871)
  • Github: as soon as any check fails, ignore any pending (7b280a2)

Documentation

  • Update installation instructions (044790a)
  • Flesh out and update README (8d42945)
  • Fix typos and clarifications (9462957)

Miscellaneous Tasks

  • Remove unused dependencies (235aee8)
  • Add grcov-coverage as an alternate report generation recipe (d67b821)
  • Ignore coverage metadata (profraw files) (8609652)
  • Release 0.7.1 (ea9a858)

Refactor

  • Config: use thiserror and move tests about (0b8e41a)
  • Git: use thiserror and cleanup errors (621e599)
  • Server: use thiserror (e29c274)

Testing

  • Add more tests to config crate (1010eae)
  • Add more tests to forge crate (98839c8)
  • Add more tests to forge-forgejo crate (c189aa3)
  • Add more tests to forge-github crate (309e523)

[0.7.0] - 2024-05-31

17148e7...c1c62e7

Bug Fixes

  • Add missing list webhooks implementation (1eb4ed6)

Features

  • Webhook query paths include forge alias (206e64c)
  • Add support for GitHub (46b6d86)

Miscellaneous Tasks

[0.6.2] - 2024-05-29

3642b2c...17148e7

Bug Fixes

  • Remove old implementation of forgejo get all branches (9f04b1a)

Documentation

  • Update dependency graph (e62f5e2)

Miscellaneous Tasks

Refactor

  • Get commit from from local repo (part 2/3) (8a35911)
  • Move validate_positions into git crate (dd5532d)
  • Merge git::validate module into git::validation (f10dc25)
  • Move repo_clone implementation to git crate (d0638fd)
  • Move git::read_file implementation to git crate (f259179)
  • Move git::remote_branches to git crate (012668d)

[0.6.1] - 2024-05-25

6cab8bb...3642b2c

Bug Fixes

  • New commit_log matches original from API request (3642b2c)

[0.6.0] - 2024-05-25

8616225...6cab8bb

Features

  • Config file watcher will respond to touch (ebbb655)

Miscellaneous Tasks

  • Don't directly open coverage report (c92e41e)
  • Release 0.6.0 (6cab8bb)

Refactor

  • Disolve gitforge:errors module (564e14a)
  • Move MessageToken to repo-actor crate (4053563)
  • Rename gitforge crate as forge (f2af849)
  • Improve consistency of use of git types (639223f)
  • Move ForgeLike to git (64cbe36)
  • Merge config and load modules (17b1629)
  • Consitent use of config crate (9e37c07)
  • Extract forge-forgejo crate (5253e13)
  • Remove unused git branch error (0202be1)
  • Move forgejo branch test to forgejo crate (7818b25)
  • Get commit log from local repo (step 1) (7a0247e)

Testing

  • Don't record coverage for mock forge (d76be11)

Build

  • Forge only include forgejo crate when feature enabled (4cd797a)

[0.5.2] - 2024-05-22

e5744e8...8616225

Documentation

  • Add diagram showing crate dependencies (2dbd421)

Miscellaneous Tasks

Refactor

  • Add mock repository and tests (341dc97)
  • Collapse type module into gitforge module (df8ebc6)
  • Extract repo-actor and gitforge crates (db9b422)

[0.5.1] - 2024-05-21

eabeeed...e5744e8

Bug Fixes

  • Invalid webhook authorisations (e5744e8)

[0.5.0] - 2024-05-20

d241273...eabeeed

Bug Fixes

  • Don't use gix in server (4977619)
  • Git-cliff template add null check (ba92f23)

Documentation

Features

  • Display expected auth in logs in invalid request (c6c8dce)

Miscellaneous Tasks

Refactor

  • Split mock, real and open into their files (155497c)
  • Reporitory errors don't leak implementation (70100f6)
  • Only expose OpenRepository from repository::open (c3c4c41)

Testing

Build

  • Validate format locally (7b1575e)

[0.4.1] - 2024-05-19

f302f7a...d241273

Miscellaneous Tasks

Build

Revert

  • "build(woodpecker): remove redundant build of a builder images" (8e22a47)

[0.4.0] - 2024-05-18

a4694d4...f302f7a

Documentation

  • Remove build status badge from woodpecker (4924e9b)
  • Add prerequisits (2cefe07)
  • Add msrv and some formatting (e3205af)

Features

  • Log errors in webhook requests (6757723)
  • Remove unused features from dependencies (85d38ed)
  • Don't log individual internal messages (ee83def)
  • Don't log validation ok (9d0f2d1)
  • Warn when message is dropped (f398fb3)

Miscellaneous Tasks

  • Add coverage recipe (b7416c7)
  • Remove dependency on terrors (f56ac32)
  • Remove unused dependency anyhow (f1a6d50)
  • Remove dependency test-log (d6ca6ea)
  • Remove dependency pretty_assertions (6c06d63)
  • Remove unused dependency tempfile (76472fa)
  • Version set to 0.4.0 (f302f7a)

Refactor

  • More use of derive_more (c374076)
  • More derive_more replacing boilerplate (d70baa4)
  • More derive_more replacing boilerplate (eb7d14b)
  • Rename RepoConfigValidationError as Error (f8375ed)
  • More derive_more replacing boilerplate (d87af32)
  • Rename reset as push (446300e)

Testing

Build

  • Add demo action (45e172e)
  • Triger action (d909d42)
  • Add push-next job (0f7d1a8)
  • Drop action based on builder (8107411)
  • Remove build_and_lint and test from push-next (c90aef3)
  • Use rust action (29c03b9)
  • Remove redundant build of a builder images (38f236f)

[0.3.3] - 2024-05-13

1e38330...a4694d4

Refactor

  • Replace boilerplate with derive_more (a4694d4)

Build

[0.3.2] - 2024-05-13

e34d5c2...1e38330

Features

  • Add git_dir value to error when reset fails (1e38330)

[0.3.1] - 2024-05-12

1cd56d9...e34d5c2

Bug Fixes

Miscellaneous Tasks

  • Convert project into a cargo workspace (834dff4)
  • Clean up dependencies for split crates (87c762c)

Refactor

  • Extract server crate (3a112dd)
  • Specify server dependency in workspace (740419f)
  • Extract modules config and git from server (4d352f0)

Build

  • Clean up and update debian version (e34d5c2)

[0.3.0] - 2024-05-10

3c60ff9...1cd56d9

Bug Fixes

  • Deserialise gitdir as PathBuf, but expose it as GitDir (ee8b1e9)
  • Format path to clone into correctly (555aada)
  • Use local repo or clone to allow git push (5ba5a12)
  • Don't try to reset next when dev is not based on main (7e79f48)

Features

  • Add recipe for exposing webhook server (dfd7d32)
  • Replace webhook if it already exists (ec9571a)
  • Replace git abstraction (adb44d1)
  • User can specify git directory to use for a repo (7048530)
  • User must specify a directory to store data (16dc823)
  • Add ability to clone a repo (9187005)
  • Add GitDir type (56e253b)
  • Use GitDir in place of raw PathBuf (a024c3d)
  • Add gitdir to RepoDetails type (b71aece)
  • Clone repo when starting repo (17f5f62)
  • Impl Deref for GitDir (7b46045)
  • Validate repo if it already exists (ff6e61b)
  • Clone repo in-process (bb67b7c)
  • Use specified gitdir when supplied (31ef0c1)
  • Remove redundant call to register webhook (2c5f497)
  • Avoid duplicate messages being passed for repo actor (da5bc69)
  • Extract Server actor (9b21117)
  • Give Server an incremental generation counter (b1638a6)
  • Restart server when config file is updated (6d147ef)
  • Don't load config from repo if repo config is in server config (ec2ebe7)
  • Reload .git-next.toml from repo when main branch updated (e5a8051)
  • Extract git::reset from gitforge::forgejo (e806278)
  • Include repo in missing handler logs (b7aa417)
  • Cache Repository in RepoActor (992821d)
  • Use cached Repository from RepoActor (62bee38)
  • Allow specifying id address and port to bind to (1cd56d9)

Miscellaneous Tasks

  • Version set to 0.3.0 (c625105)
  • Clean up and reformat logging (7516ec1)
  • More cleaning up of logging around fetch and reset (709fde1)
  • Fix typo (96994f2)

Refactor

  • Migrate some types from forge (0d57ee7)
  • Delete dead code (0bfa1df)
  • Move server config loading out of forgejo module (50a969e)
  • Use 'server_repo_config' consistently (1170510)
  • Use 'repo_path' use consistently (18143c1)
  • Move tests into their own file (e10561f)
  • Rename config variables,etc as repo_config (32d54cf)
  • Rename name to repo_alias for consistency (8b56a18)
  • Rename name to forge_name for consistency (fc1c796)
  • Rename forge as forge_config (3dfbd44)
  • Extract Repository::open and clone (daa40e7)

Build

  • Renovate should avoid pointless patch PRs (60af21d)
  • Specify clippy flags in Cargo.toml (d42c8fb)

[0.2.0] - 2024-04-14

8ed942a...3c60ff9

Bug Fixes

Documentation

Features

  • Wrap API Token in a secrect::Secret and avoid logging (cedaf16)
  • Don't advance next branch if the target commit message is invalid (4e6a306)
  • Abstract Git command execution into injectable enum (5fcf16e)
  • Isolate ForgeJo behind default feature 'forgejo' (1ffa836)
  • Allow repo config to be specified in server config (0105631)
  • Add webhook URL field to server config (069b313)
  • Update next branch when not based on main (0622e60)
  • Add webhook server (df2d9d6)
  • Implement unregister webhook (e706080)
  • Implement register webhook (dd91aa4)
  • Handle messages received via webhook for ForgeJo (24cb485)
  • Reschedule ValidateRepo when checks are Pending (b398ac3)
  • Only accept authorised messages (64a6b84)

Miscellaneous Tasks

Refactor

  • Extract get_commit_histories (2055421)

Testing

Build

  • Add validate-dev-branch recipe (eca45d0)

[0.1.2] - 2024-04-12

7d3ebfb...8ed942a

Bug Fixes

  • Remove extra StartRepo message (8ed942a)

[0.1.1] - 2024-04-11

c9d52a5...7d3ebfb

Build

  • Include default toml files in build context (fad4867)
  • Version set to 0.1.1 (7d3ebfb)

[0.1.0] - 2024-04-11

Bug Fixes

  • Parse the server file with sections (f1041d6)
  • Update case for default forge_type (4b64aa5)
  • Fix typo (b66b70c)
  • Stop logging all network requests (0721b63)
  • Doesn't properly detect when dev or next are ahead (50a56aa)
  • Pause before checking CI status when just updated branch (9469d27)
  • Reduce complexity of StartMonitoring handler (7dab1da)
  • Clean up instrumentation (1c9f7cb)
  • Restore lost sleep (bb4d171)

Documentation

Features

  • Parse commands from args (dd124d1)
  • Creates a default configuration file (aa27e96)
  • Creates a default server configuration file (1e3ca5b)
  • Add stub for server start command (e25ff50)
  • Log when not overwritting exiting file (d341647)
  • Add Filesystem to wrap fs operations (1207bbc)
  • Add initial example server configuration (7890423)
  • Add read_file() (90f9ab8)
  • Parse file (efb55e4)
  • Rename property type as forge_type (cb0a7f7)
  • Rename propery url as hostname (a3c52c7)
  • Implement Display for ForgeType (dc41105)
  • Log error when fails to load config (ef75ecd)
  • Log parsed config (1de2bd2)
  • Add ForgeDetails and RepoDetails types (3ac4894)
  • Create stub RepoActor (eacefef)
  • Start repo actors (ca673f9)
  • Repos specify which branch to read config from (e9685ab)
  • Impl Display for RepoDetails (7770503)
  • Make RepoDetails Clone (a4e781d)
  • Parse RepoConfig (c3f2266)
  • Add RepoActor::new (abbd2e6)
  • Add ApiToken newtype (3c4a0d5)
  • Use accesors for hostname and user (be01d10)
  • Replace own filesystem module with kxio lib (f255c44)
  • Define default repo config (25a1886)
  • Load repo config (b093c00)
  • Verify branches exist in repo (ca37045)
  • Create stub for validating branch positions (bdea942)
  • Fetch commit histories (9eb7660)
  • Validate branch head positions (3203bbd)
  • Assess next action for repo (70e0f94)
  • Add stub for branch::advance_main (7ed30fc)
  • Add message and handler for AdvanceMainTo(Commit) (ad7d513)
  • Add deserialise types for commit status (8ad84bc)
  • Add stub for forge::forgejo::get_commit_status (a7a3f8a)
  • Implement repo::status::check_next (c66170c)
  • Next commit status is returned as pass, fail ro pending (546d915)
  • Implement Display for forge::Commit (d64024e)
  • Add marker info logs for advance main and next (5c4b745)
  • Log returned status for next branch (e27b050)
  • Implement forge::forgejo::get_commit_history (a5e9421)
  • Implement advancing main branch to the next commit (3a761b5)
  • Add branch::reset function (ed1ab6f)
  • Force push next branch to main when it isn't a dev ancestor (115b353)
  • Git command output is suppressed (f7dc27f)
  • When no action to take, wait 10 seconds then restart (c9d52a5)

Miscellaneous Tasks

Refactor

  • Use info! rather than event! (2c07bb5)
  • Rename Config as ServerConfig (d5e9b14)
  • Compare whole server config in one go (aaaa975)
  • Reduce complexity starting server (7e08640)
  • Inline console_subscriber (0b85ac3)
  • Pass RepoDetails by reference (d2d49f3)
  • Reuse branch::reset to advance main branch to next (ab58981)
  • Reuse branch::reset to advance main branch to next (6bad8a2)
  • Reuse branch::reset to advance next towards dev (e0b1571)
  • Rename ResetForce::Normal as None (ec258bc)

Build

  • Add cargo config file (866d386)
  • Add initial CI (1d03fbf)
  • Add bacon.toml config (cb46138)
  • Add Dockerfile and builder (b5a1dd4)
  • TODO checker ignores git hook samples (161377f)
  • Run on cron and push to main (ac37e9e)
  • Don't include Cargo.lock in image (edf551b)
  • Don't specify patch level for todo checker (d2e0a7c)
  • Don't run todo checker on cron (1b0c09d)
  • Run checks against next branch too (cdaca82)
  • Split updating docker builder into seperate job (0b5c91f)
  • Merge and rename jobs (ca30d1b)
  • Restore dropped cargo build (cd18dbe)

Config

  • Add token field to Forge (a148493)