git-next/CHANGELOG.md
ForgeJo Action. See: https://git.kemitix.net/kemitix/rust 5ea4fb8d6f
All checks were successful
Test / build (map[name:nightly]) (pull_request) Successful in 12m7s
Test / build (map[name:stable]) (pull_request) Successful in 14m52s
Test / build (map[name:stable]) (push) Successful in 10m43s
Test / build (map[name:nightly]) (push) Successful in 12m6s
Release Please / Docker image (push) Successful in 5m4s
Release Please / Release-plz (push) Successful in 2m25s
chore: release v0.14.1
Signed-off-by: ForgeJo Action. See: https://git.kemitix.net/kemitix/rust <action@git.kemitix.net>
2025-01-19 20:16:57 +00:00

97 KiB

Changelog

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

git-next-forge-github - 0.14.1 - 2025-01-19

Other

  • (deps) update rust crate kxio to v5

git-next-forge-forgejo - 0.14.1 - 2025-01-19

Other

  • (deps) update rust crate kxio to v5

git-next-core - 0.14.1 - 2025-01-19

Added

  • remove openssl transitive dependency

Other

  • (deps) update rust crate gix to 0.69

git-next - 0.14.1 - 2025-01-19

Added

  • (ui) filter repos
  • remove openssl transitive dependency

Other

  • (deps) update rust crate kxio to v5

[0.14.0] - 2025-01-16

Bug Fixes

Miscellaneous Tasks

  • Reset version from rc, ready for release (faa0c2e)

Build

  • Ignore occasional use of rover (2842b6a)
  • PRs should target main (313db59)
  • Upgrade kemitix/rust v3 (b47ee56)
  • Remove woodpecker CI usage (38f3212)
  • Run docker commands on ubuntu:latest image (865e6d1)
  • Push-main use act-based ubuntu to publish docker image (dd00371)
  • Use FORGEJO_TOKEN_WRITE_PACKAGE to authenticate (352731f)
  • Publish to the correct repo (96f7098)
  • Use correct auth token (a05f18f)
  • Use correct env var for auth (a3fcbf7)
  • Fix typo (f9d4fef)
  • Check for ignored files being included in repo (6dc6000)
  • Bump rust image to v3.1.0 and use check-for-ignored (bcd46be)
  • Install dbus-dev (82d953e)
  • Build release image using alpine linux (8975e30)

[0.14.0-rc1] - 2024-11-29

91c5973...f5ca3d0

Bug Fixes

  • Disable ScrollView (23de987)
  • Rustdoc typo (f908011)
  • Apply clippy suggestions from rust nightly (bf6b4fc)

Documentation

Features

  • Switch to kameo actor system (dropping actix) (b7aa231)

Miscellaneous Tasks

Refactor

  • Replace to_string uses with a macro (64293cf)

Testing

  • Also run CI tests against Rust nightly (ef6474e)
  • Ignore use of expect in tests creating temp fs (614e721)

Build

  • Add cargo machette to push-next workflow (18a537b)
  • Switch to forgejo-todo-checker (f3a5b9c)
  • Ignore mutation output (c9d8537)
  • Add build recipe to justfile (eabf97d)

[0.13.11] - 2024-09-14

82241de...91c5973

Documentation

  • Add missing port mapping parameter for running in docker (189d579)
  • Mark tui as complete on roadmap (313d6d7)

Features

  • Remove branches when fetching from remote (0481112)
  • Should fetch repo on startup when not cloning (d4f16e6)
  • Add time and version in border (978205b)

Miscellaneous Tasks

Refactor

  • Reimplement git fetch using git (6c60e3f)
  • Update TUI sooner when receiving CI status (8359d0d)

Build

  • Don't break when debian drops old packge versions (3ea7f36)

[0.13.10] - 2024-09-12

3672fd5...82241de

Bug Fixes

  • Don't set background for normal repo alias (d2e2d00)
  • Update ui when push next or main finishes (ecd460c)
  • Tests requiring .git pass when not present (566125f)
  • Alerts, such as WIP aren't being reset (df6b96f)
  • Make tui work from docker image (664e424)

Features

  • Optionally specify max commits between dev and main (e759e49)

Miscellaneous Tasks

Build

[0.13.9] - 2024-09-04

224b63d...3672fd5

Bug Fixes

  • Shutdown properly on file parse error (b4a4631)
  • Shutdown properly on error (5e0cf27)
  • Alerts are cleared on next repo update (1f0b5e8)

Documentation

Miscellaneous Tasks

Build

  • Update debian libssl3 dependency (47cbbad)
  • Build docker image on push to next (181ec8e)
  • Enable passing arguments when running via docker (d923e83)

[0.13.8] - 2024-09-01

76ae37a...224b63d

Bug Fixes

  • Remove logging of tui updates (35e3676)
  • Create git graph log to after doing a fetch (126d5d3)
  • Improve reliability of status updates (7504ab5)
  • Give actix more time to process message (a3dd827)
  • Give actix more time to process message (a650996)
  • Give actix more time to process message (64da1d8)
  • Avoid blocking threads when pausing (4555b3a)
  • Typo in email message (d5d3130)
  • Remove unused import (2abb36a)
  • Improve colour contrast on light background (02609fd)
  • Don't show HEAD in log (d2048d8)
  • Remove logging from inside ui loop (8550adf)
  • Remove unused imports (b24005c)
  • Use configured branch names in user notification (4160b6d)

Documentation

  • Add notes on how to do a release (48a5ed7)

Features

  • Highlight user interventions in red (d1a685a)
  • Remove duplicate messages from repo body (95e9209)
  • Remove count of forges (c6bf287)
  • Move forge alias to left and add prefix (4517fe6)
  • Repo widgets only use required lines (2959bdf)
  • Forge widgets only use required lines (52bd9cc)
  • Add scrolling when overflow screen (4f66695)
  • Use moving heart emoji as liveness indicator (eca556f)
  • Hightlight status message in colour (f9e305a)
  • Highlight branchs in log (01f54d7)
  • Branch names look more like 'pills' (2b09872)
  • Hightlight repo alias in red when in alert (9720fd0)
  • Remove label from repo identity widget (be41842)
  • Make progression of branches clearer (22ce2d4)
  • Remove some borders to clean up appearance (f475095)
  • Clean up alert display (853b862)
  • Improved error display when startup fails (3c01a82)

Miscellaneous Tasks

Refactor

  • Merge repo widgets into one (e489fb3)
  • Child widget can provide constraint to container (f85cbce)
  • Rename method as peel (a2940ec)
  • Simplify repo identity widget (97b6853)
  • Introduce LogLine to wrap log formatting (576eaaf)
  • Merge identical match branches (c156480)
  • Flatten nested blocks with early returns (ca70c03)

Build

  • Enable all features in docker images (09ff4c3)
  • Add start-mac-tunnel (eb42745)
  • Make it clean when mac tunnel has closed (eae351d)

[0.13.7] - 2024-08-25

f504b62...76ae37a

Features

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

Miscellaneous Tasks

[0.13.6] - 2024-08-23

6c5e1c1...f504b62

Bug Fixes

  • Revert "fix: release-plz generated PR changelog" (e34c6e0)
  • File_watcher runs on own thread (08d2377)
  • Register webhook with valid callback url (7a4f9a4)

Features

  • (experimental) tui option (622e144)

Miscellaneous Tasks

Build

  • Test all feature combinations (0632225)

[git-next-v0.13.5] - 2024-08-10

ad916cb...6c5e1c1

Bug Fixes

  • Invalid config section typo in README (60d05c8)
  • Release-plz generated PR changelog (f5a3524)

Features

  • Make forge and repo alias more prominent in email (f0daac7)

Miscellaneous Tasks

[0.13.4] - 2024-08-08

180e8ed...ad916cb

Bug Fixes

  • Remove dependcy on clang & mold (281c07c), Closes:kemitix/git-next#131

Features

  • Add short git log graph to notifications (ef24cb5)

Miscellaneous Tasks

Refactor

  • Cleanup pedantic clippy in cli crate (24251f0)
  • Cleanup pedantic clippy in core crate (6acefda)
  • Cleanup pedantic clippy in forge-forgejo crate (067296f)
  • Cleanup pedantic clippy in forge-github crate (ad358ad)
  • Macros use a more common syntax (8c19680)

Build

  • Remove publish-to-forgejo step (34019b5)
  • Remove publish-to-crates-io step (9a1756b)

[0.13.3] - 2024-08-04

f4a399e...180e8ed

Bug Fixes

  • Shout.desktop should be optional (3895246)

Miscellaneous Tasks

Build

  • Add release-plz ci (5534160)
  • Correct path to rust toolchain action (2156780)
  • Use release-plz from dev kemitix/rust action (74437e9)
  • Remove redundent steps (f363f9e)
  • Use sha to specify rust action (bust cache) (ee135eb)
  • Bump rust action to v1.80.0-2 (a978380)
  • Use forgejo secret token directly (d63b712)

[0.13.2] - 2024-08-04

58d9a99...f4a399e

Miscellaneous Tasks

Testing

  • Timing test waits longer than expiry (5d64692)

Build

  • Add missing dependency libdbus-1-dev (b1d5344)
  • Add missing dependency libdbus-1-dev to correct Dockerfile (347b9cb)
  • Upgrade git-next-builder to 2024-08-04 (c27d891)
  • Upgrade docker image to use debian:stable-20240722-slim (c6e3d71)

[0.13.1] - 2024-08-04

474a9b5...58d9a99

Bug Fixes

  • Add example email config to server default template (637abb5)

Documentation

  • Add config details for sending emails (6bc4b7b)
  • Add example to readme for listen, shout & storage (dc3c55f)

Features

  • Add support for desktop notifications (9a2fa2e), Closes:kemitix/git-next#119
  • Prevent duplicate alerts (6de8e4f)

Miscellaneous Tasks

  • Renovate PRs should target dev branch (cd2e918)
  • Release 0.13.1 (58d9a99)

Refactor

  • Extract alerts into own actor (421e85c)
  • Remove unused dependencies (850e990)

Testing

  • Update tests to check for email config parsing (9fb70f9)

Build

  • Update to rust with libdbus-1-dev (2b77eae)
  • Release-plz single changelog and tag (6a31b46)

[0.13.0] - 2024-08-02

dd0a1ca...474a9b5

Features

  • Return better errors to the user on init (9a9c73d)
  • Return better errors to user on server failure (1650e93)
  • Terminate process if config file is invalid (f6bc2e1)
  • Reduce the max commit dev can be ahead of main (7b64e30)
  • Remove notification.type (8df7600)
  • Restructured server config into listen & shout sections (538728c)
  • Send email notifications (sendmail/smtp) (12a2981)

Miscellaneous Tasks

[0.12.1] - 2024-07-29

b89431b...dd0a1ca

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

[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)