git-next/CHANGELOG.md

379 lines
33 KiB
Markdown

# Changelog
All notable changes to this project will be documented in this file.
## [0.4.1] - 2024-05-19
[f302f7a](https://git.kemitix.net/kemitix/git-next/commit/f302f7a5f804390fa63003f8564e181f3b760cc1)...[d241273](https://git.kemitix.net/kemitix/git-next/commit/d241273345c73f7afb29bf1623b72b9680a5b7bb)
### Miscellaneous Tasks
- Version set to 0.4.1 ([d241273](https://git.kemitix.net/kemitix/git-next/commit/d241273345c73f7afb29bf1623b72b9680a5b7bb))
### Build
- Upgrade to clang-16 ([7b0d567](https://git.kemitix.net/kemitix/git-next/commit/7b0d56746fe559b44026d8b2144c1cd4967eb076))
### Revert
- "build(woodpecker): remove redundant build of a builder images" ([8e22a47](https://git.kemitix.net/kemitix/git-next/commit/8e22a472cb4e71e7bd49e4a89c7547af2133a24c))
## [0.4.0] - 2024-05-18
[a4694d4](https://git.kemitix.net/kemitix/git-next/commit/a4694d48f68c0caf4df8ff59912bec0d52b7fd25)...[f302f7a](https://git.kemitix.net/kemitix/git-next/commit/f302f7a5f804390fa63003f8564e181f3b760cc1)
### Documentation
- Remove build status badge from woodpecker ([4924e9b](https://git.kemitix.net/kemitix/git-next/commit/4924e9b3f0d60c0f654dd460ed51fe4c47a9fb43))
- Add prerequisits ([2cefe07](https://git.kemitix.net/kemitix/git-next/commit/2cefe07a80738c7127fc3c18a983b1455a211ad4))
- Add msrv and some formatting ([e3205af](https://git.kemitix.net/kemitix/git-next/commit/e3205af094a08436dce6cff86dcd6b9daad3ab61))
### Features
- Log errors in webhook requests ([6757723](https://git.kemitix.net/kemitix/git-next/commit/6757723b779ad0f0b9e239f3ff9757d40b4f91d4))
- Remove unused features from dependencies ([85d38ed](https://git.kemitix.net/kemitix/git-next/commit/85d38ede56b8b3f8220083a1309f083cbcd532ed))
- Don't log individual internal messages ([ee83def](https://git.kemitix.net/kemitix/git-next/commit/ee83def127272720232113ac83d41c66cc0eaae5))
- Don't log validation ok ([9d0f2d1](https://git.kemitix.net/kemitix/git-next/commit/9d0f2d1ba13539db7096f34c5641b438b23eb226))
- Warn when message is dropped ([f398fb3](https://git.kemitix.net/kemitix/git-next/commit/f398fb3b6a122a135f308fd54244f67c37d62670))
### Miscellaneous Tasks
- Add coverage recipe ([b7416c7](https://git.kemitix.net/kemitix/git-next/commit/b7416c7434d30aade3adea1a4402d4eaa08ba960))
- Remove dependency on terrors ([f56ac32](https://git.kemitix.net/kemitix/git-next/commit/f56ac321f4f6a36b011564d9bc39573eb4770dd0))
- Remove unused dependency anyhow ([f1a6d50](https://git.kemitix.net/kemitix/git-next/commit/f1a6d5089b69abfd5613924e7d38ee5e4d9038a3))
- Remove dependency test-log ([d6ca6ea](https://git.kemitix.net/kemitix/git-next/commit/d6ca6ea3b27a26dce0bf9ec44fec648b15ddd7cb))
- Remove dependency pretty_assertions ([6c06d63](https://git.kemitix.net/kemitix/git-next/commit/6c06d63c57c3d2abf9a40e4dc5e002022431e0d6))
- Remove unused dependency tempfile ([76472fa](https://git.kemitix.net/kemitix/git-next/commit/76472fa74abe6200f44092bd1ab582f58b4af33e))
- Version set to 0.4.0 ([f302f7a](https://git.kemitix.net/kemitix/git-next/commit/f302f7a5f804390fa63003f8564e181f3b760cc1))
### Refactor
- More use of derive_more ([c374076](https://git.kemitix.net/kemitix/git-next/commit/c3740763230f981a70e1ff43f7b36d8edbfdfa29))
- More derive_more replacing boilerplate ([d70baa4](https://git.kemitix.net/kemitix/git-next/commit/d70baa4350f175a32e25eb3689184ac595c98bd6))
- More derive_more replacing boilerplate ([eb7d14b](https://git.kemitix.net/kemitix/git-next/commit/eb7d14bc33fae76bcf7ca429a0ead521bd94d278))
- Rename RepoConfigValidationError as Error ([f8375ed](https://git.kemitix.net/kemitix/git-next/commit/f8375ed1fc58f5f2ee4c0997e91f92f2fae346f6))
- More derive_more replacing boilerplate ([d87af32](https://git.kemitix.net/kemitix/git-next/commit/d87af324d6dafce077979330211b131dafb275f3))
- Rename reset as push ([446300e](https://git.kemitix.net/kemitix/git-next/commit/446300e7869a154a83aa2a82cc18529db035c163))
### Testing
- Add tests ([a7e7d12](https://git.kemitix.net/kemitix/git-next/commit/a7e7d12928e93f451c2c1634fb9cd2048026ec44))
- Add some tests ([ac3e1be](https://git.kemitix.net/kemitix/git-next/commit/ac3e1be261e668762f879f9011de65a1d6e0cfa1))
- Add more tests ([896e1cb](https://git.kemitix.net/kemitix/git-next/commit/896e1cba42381da2fb1dded912cfb58e9a0cd435))
- Add more tests ([c3a5e50](https://git.kemitix.net/kemitix/git-next/commit/c3a5e50ad539387d276518df2d49bca2e30d6623))
- Make repository more testable ([58e991b](https://git.kemitix.net/kemitix/git-next/commit/58e991b2b7fae7aaf9fe26385131988c41835baf))
### Build
- Add demo action ([45e172e](https://git.kemitix.net/kemitix/git-next/commit/45e172e181f074dd321312b8ed65aad31bf39690))
- Triger action ([d909d42](https://git.kemitix.net/kemitix/git-next/commit/d909d427c7082dc0705d7b7f16d5093165764ecf))
- Add push-next job ([0f7d1a8](https://git.kemitix.net/kemitix/git-next/commit/0f7d1a8d4230a972caffc491b92621ec7de664b9))
- Drop action based on builder ([8107411](https://git.kemitix.net/kemitix/git-next/commit/8107411935d4c6d96d44cce1d055b6b7a225a10f))
- Remove build_and_lint and test from push-next ([c90aef3](https://git.kemitix.net/kemitix/git-next/commit/c90aef3796f55cd9d15f6978becee111a12ce487))
- Use rust action ([29c03b9](https://git.kemitix.net/kemitix/git-next/commit/29c03b936d910027a36714ed51a6eddeb71a3a0b))
- Remove redundant build of a builder images ([38f236f](https://git.kemitix.net/kemitix/git-next/commit/38f236fc37dfd3ca35e7f05442ac4cd42dce22d0))
## [0.3.3] - 2024-05-13
[1e38330](https://git.kemitix.net/kemitix/git-next/commit/1e383309143cc9e9287a2531115bd63c7e47bb88)...[a4694d4](https://git.kemitix.net/kemitix/git-next/commit/a4694d48f68c0caf4df8ff59912bec0d52b7fd25)
### Refactor
- Replace boilerplate with derive_more ([a4694d4](https://git.kemitix.net/kemitix/git-next/commit/a4694d48f68c0caf4df8ff59912bec0d52b7fd25))
### Build
- Install git ([c7c95a5](https://git.kemitix.net/kemitix/git-next/commit/c7c95a57508d44e36fe9edf2f4f0ee0e0f516dd3))
## [0.3.2] - 2024-05-13
[e34d5c2](https://git.kemitix.net/kemitix/git-next/commit/e34d5c2c2cc20ae11bea377f384806a9c50515ab)...[1e38330](https://git.kemitix.net/kemitix/git-next/commit/1e383309143cc9e9287a2531115bd63c7e47bb88)
### Features
- Add git_dir value to error when reset fails ([1e38330](https://git.kemitix.net/kemitix/git-next/commit/1e383309143cc9e9287a2531115bd63c7e47bb88))
## [0.3.1] - 2024-05-12
[1cd56d9](https://git.kemitix.net/kemitix/git-next/commit/1cd56d953ef084a19c6013eeffe34030d6230ef7)...[e34d5c2](https://git.kemitix.net/kemitix/git-next/commit/e34d5c2c2cc20ae11bea377f384806a9c50515ab)
### Bug Fixes
- Clippy fixes for tests ([a8eedfc](https://git.kemitix.net/kemitix/git-next/commit/a8eedfcac56779483c68bd507d8a773afff811fb))
### Miscellaneous Tasks
- Convert project into a cargo workspace ([834dff4](https://git.kemitix.net/kemitix/git-next/commit/834dff4370ec3d9c4c51a7c2fce52153c114f32c))
- Clean up dependencies for split crates ([87c762c](https://git.kemitix.net/kemitix/git-next/commit/87c762c59a1bb952e88d4f039790437ea3da4ab8))
### Refactor
- Extract server crate ([3a112dd](https://git.kemitix.net/kemitix/git-next/commit/3a112ddd8bcdce97358cf2f19fccfe7865a697fd))
- Specify server dependency in workspace ([740419f](https://git.kemitix.net/kemitix/git-next/commit/740419ffb8f82cc826dbbe82f13fb20c0aad0648))
- Extract modules config and git from server ([4d352f0](https://git.kemitix.net/kemitix/git-next/commit/4d352f005df8628733ed96e65b21f6b137ca93bd))
### Build
- Clean up and update debian version ([e34d5c2](https://git.kemitix.net/kemitix/git-next/commit/e34d5c2c2cc20ae11bea377f384806a9c50515ab))
## [0.3.0] - 2024-05-10
[3c60ff9](https://git.kemitix.net/kemitix/git-next/commit/3c60ff99ef2642b0ceb927a9076fc0c8cf973479)...[1cd56d9](https://git.kemitix.net/kemitix/git-next/commit/1cd56d953ef084a19c6013eeffe34030d6230ef7)
### Bug Fixes
- Deserialise gitdir as PathBuf, but expose it as GitDir ([ee8b1e9](https://git.kemitix.net/kemitix/git-next/commit/ee8b1e9fce87097548b0cc0544077c192c81bca5))
- Format path to clone into correctly ([555aada](https://git.kemitix.net/kemitix/git-next/commit/555aada7e99899ed53efcf51ecd13b37dc64e0b8))
- Use local repo or clone to allow git push ([5ba5a12](https://git.kemitix.net/kemitix/git-next/commit/5ba5a126c3d3ca74e64da370b22b14fa87b3b5fb))
- Don't try to reset next when dev is not based on main ([7e79f48](https://git.kemitix.net/kemitix/git-next/commit/7e79f4877a8a31e1a8610af5d9ca33a8bce7c651))
### Features
- Add recipe for exposing webhook server ([dfd7d32](https://git.kemitix.net/kemitix/git-next/commit/dfd7d32c948c7af3aec48927af9d7813e2fc2d04))
- Replace webhook if it already exists ([ec9571a](https://git.kemitix.net/kemitix/git-next/commit/ec9571a182598291a95357778870c8216b5cd7d8))
- Replace git abstraction ([adb44d1](https://git.kemitix.net/kemitix/git-next/commit/adb44d18c9209d8e73a4e5ae2c12f0fc8d927909))
- User can specify git directory to use for a repo ([7048530](https://git.kemitix.net/kemitix/git-next/commit/704853017b1e63c73a96f52cbb4813dccc2e765a))
- User must specify a directory to store data ([16dc823](https://git.kemitix.net/kemitix/git-next/commit/16dc823f58aded0bcabaea46efd223f6e0ee6904))
- Add ability to clone a repo ([9187005](https://git.kemitix.net/kemitix/git-next/commit/91870055b0ec2ff487724adc1f48a23aa28e43c2))
- Add GitDir type ([56e253b](https://git.kemitix.net/kemitix/git-next/commit/56e253b545188c4a0a114bd4a75501ea19f3a248))
- Use GitDir in place of raw PathBuf ([a024c3d](https://git.kemitix.net/kemitix/git-next/commit/a024c3de5e04d3fd1d339c91dca2c8598b70e3c1))
- Add gitdir to RepoDetails type ([b71aece](https://git.kemitix.net/kemitix/git-next/commit/b71aece8c90144baee2820e180570cf3d8a7641a))
- Clone repo when starting repo ([17f5f62](https://git.kemitix.net/kemitix/git-next/commit/17f5f62e614e97fec696c6f0c62dcafeaeda1300))
- Impl Deref for GitDir ([7b46045](https://git.kemitix.net/kemitix/git-next/commit/7b46045737696328f4bd10197559374ff786e8f1))
- Validate repo if it already exists ([ff6e61b](https://git.kemitix.net/kemitix/git-next/commit/ff6e61b0eefb326092af97dcc44c6d5623acbd43))
- Clone repo in-process ([bb67b7c](https://git.kemitix.net/kemitix/git-next/commit/bb67b7c66dfc52b16632834935d9b8157c63e1af))
- Use specified gitdir when supplied ([31ef0c1](https://git.kemitix.net/kemitix/git-next/commit/31ef0c19fbf10d0a91d830c6b1ec45208bdbed63))
- Remove redundant call to register webhook ([2c5f497](https://git.kemitix.net/kemitix/git-next/commit/2c5f497be2d6f6f175527ead3ebb7e988761c365))
- Avoid duplicate messages being passed for repo actor ([da5bc69](https://git.kemitix.net/kemitix/git-next/commit/da5bc6950817afb84a55b1e11a709ad199d1a2cd))
- Extract Server actor ([9b21117](https://git.kemitix.net/kemitix/git-next/commit/9b211179bf8c3a5a1273a7f343a56cf40628c733))
- Give Server an incremental generation counter ([b1638a6](https://git.kemitix.net/kemitix/git-next/commit/b1638a65fc6e41e1d1182974d4612ee003af4311))
- Restart server when config file is updated ([6d147ef](https://git.kemitix.net/kemitix/git-next/commit/6d147efe32f5591a84aff8780de03de2a28beee0))
- Don't load config from repo if repo config is in server config ([ec2ebe7](https://git.kemitix.net/kemitix/git-next/commit/ec2ebe70cf60ecfb2232729ef3ef2137f220c3a7))
- Reload .git-next.toml from repo when main branch updated ([e5a8051](https://git.kemitix.net/kemitix/git-next/commit/e5a8051a3160902b78f29b0e4fdf6dfbc1bbb295))
- Extract git::reset from gitforge::forgejo ([e806278](https://git.kemitix.net/kemitix/git-next/commit/e8062788a0a0195a4b16e7bdbb30ec331195b0ff))
- Include repo in missing handler logs ([b7aa417](https://git.kemitix.net/kemitix/git-next/commit/b7aa417831431c2fc835583daa2817d10056c9d4))
- Cache Repository in RepoActor ([992821d](https://git.kemitix.net/kemitix/git-next/commit/992821d563ade9ca109cd400614c28913b9ccf5e))
- Use cached Repository from RepoActor ([62bee38](https://git.kemitix.net/kemitix/git-next/commit/62bee38c85397bb4fcde8e05cca5872eed24843b))
- Allow specifying id address and port to bind to ([1cd56d9](https://git.kemitix.net/kemitix/git-next/commit/1cd56d953ef084a19c6013eeffe34030d6230ef7))
### Miscellaneous Tasks
- Version set to 0.3.0 ([c625105](https://git.kemitix.net/kemitix/git-next/commit/c6251052b78854c087e83d6907aefe976b8e4cca))
- Clean up and reformat logging ([7516ec1](https://git.kemitix.net/kemitix/git-next/commit/7516ec1dc17258fc2f362d53aaf39b2757e61433))
- More cleaning up of logging around fetch and reset ([709fde1](https://git.kemitix.net/kemitix/git-next/commit/709fde18d11c15c9ef51a3d8bdbf7c5052c6119a))
- Fix typo ([96994f2](https://git.kemitix.net/kemitix/git-next/commit/96994f23904833aff1e9893894f21f42b037e222))
### Refactor
- Migrate some types from forge ([0d57ee7](https://git.kemitix.net/kemitix/git-next/commit/0d57ee7bc0f60b7edf8c73cfda0631ddbafeec9e))
- Delete dead code ([0bfa1df](https://git.kemitix.net/kemitix/git-next/commit/0bfa1df875f7dc8dfeeecc173db6e0239d1c1166))
- Move server config loading out of forgejo module ([50a969e](https://git.kemitix.net/kemitix/git-next/commit/50a969ede64af5115bba2807bf0481db34b6bd29))
- Use 'server_repo_config' consistently ([1170510](https://git.kemitix.net/kemitix/git-next/commit/1170510c440f1d8384f1d6741115d650cfa56850))
- Use 'repo_path' use consistently ([18143c1](https://git.kemitix.net/kemitix/git-next/commit/18143c17fd519e5c80e6ea2a37c0095ba76b7a30))
- Move tests into their own file ([e10561f](https://git.kemitix.net/kemitix/git-next/commit/e10561f853b993e3c295d4da318c63c067211ff8))
- Rename config variables,etc as repo_config ([32d54cf](https://git.kemitix.net/kemitix/git-next/commit/32d54cfc1c5aefd0378f60cfea7e2ba84824f811))
- Rename name to repo_alias for consistency ([8b56a18](https://git.kemitix.net/kemitix/git-next/commit/8b56a185d37028c343054c768b17d52e8db9f152))
- Rename name to forge_name for consistency ([fc1c796](https://git.kemitix.net/kemitix/git-next/commit/fc1c79620cfea7d34c531ebc4f3690240b05b3b5))
- Rename forge as forge_config ([3dfbd44](https://git.kemitix.net/kemitix/git-next/commit/3dfbd44b373bbd0bcfc5e3a0d732945319e6cb83))
- Extract Repository::open and clone ([daa40e7](https://git.kemitix.net/kemitix/git-next/commit/daa40e762196d276df271a219de47a0c0931752c))
### Build
- Renovate should avoid pointless patch PRs ([60af21d](https://git.kemitix.net/kemitix/git-next/commit/60af21d07e6e1ba4c7211d71b44c318a2081e54c))
- Specify clippy flags in Cargo.toml ([d42c8fb](https://git.kemitix.net/kemitix/git-next/commit/d42c8fb8900a396b972e0d70ad58b9b59fc1bce4))
## [0.2.0] - 2024-04-14
[8ed942a](https://git.kemitix.net/kemitix/git-next/commit/8ed942a50137f1932500fa4cd64d1484600fb3d8)...[3c60ff9](https://git.kemitix.net/kemitix/git-next/commit/3c60ff99ef2642b0ceb927a9076fc0c8cf973479)
### Bug Fixes
- Avoid using terrors::OneOf across an await boundary ([0b427f1](https://git.kemitix.net/kemitix/git-next/commit/0b427f1d4cf6d46291520eb6d2b26334fc730ace))
- Don't reload config when updating next branch ([3735afb](https://git.kemitix.net/kemitix/git-next/commit/3735afb2f80d478573e8234fbc2507bec051ec7d))
- Prevent losing a task waker ([869935d](https://git.kemitix.net/kemitix/git-next/commit/869935dfc2a281f3c638c41812249390dbe78330))
- Treat a blank status check result as pending ([e8d174e](https://git.kemitix.net/kemitix/git-next/commit/e8d174ee846abe353d8859dfe0f822dbcab03c1b))
- Don't log url containing API token ([ee9cc53](https://git.kemitix.net/kemitix/git-next/commit/ee9cc53540c75e5c513b6204b28f5d7204770251))
- Visibility on methods ([af221f8](https://git.kemitix.net/kemitix/git-next/commit/af221f8a2f64f806a3699f60c410ab10527f3424))
- Always reschedule to validate repos ([e272ca2](https://git.kemitix.net/kemitix/git-next/commit/e272ca296bc1749865b284aeb66d39b5efebf56e))
- Update rust crate gix to 0.62 (#40) ([cfa25b7](https://git.kemitix.net/kemitix/git-next/commit/cfa25b7f677ecb777bf9973f838a1ca2d3a3a9a6)), Co-authored-by:Renovate Bot <renovate@kemitix.net>, Reviewed-on:https://git.kemitix.net/kemitix/git-next/pulls/40, Co-authored-by:renovate <renovate@noreply.kemitix.net>, Co-committed-by:renovate <renovate@noreply.kemitix.net>
- Revalidate positions in more conditions ([4c4ac4d](https://git.kemitix.net/kemitix/git-next/commit/4c4ac4df25d4f644357ba73ba0bb18631d11394b))
### Documentation
- Rewrite README ([be3aded](https://git.kemitix.net/kemitix/git-next/commit/be3aded38270b803fa9d336a7d00e3f83f979774))
- Rewrite README ([53f66d5](https://git.kemitix.net/kemitix/git-next/commit/53f66d5ee5bae811560cef42c8e02973fddb6bbe))
- Add docs to types ([229d47f](https://git.kemitix.net/kemitix/git-next/commit/229d47f7c7d61f62033101f7b48f8eefbc581ba6))
### Features
- Wrap API Token in a secrect::Secret and avoid logging ([cedaf16](https://git.kemitix.net/kemitix/git-next/commit/cedaf16acf75d10f6f126906b586c358f201121c))
- Don't advance next branch if the target commit message is invalid ([4e6a306](https://git.kemitix.net/kemitix/git-next/commit/4e6a306a723a24ebc7f385daed90d688e2a092ae))
- Abstract Git command execution into injectable enum ([5fcf16e](https://git.kemitix.net/kemitix/git-next/commit/5fcf16ea753466b1f375648c2d59d39d9c84c890))
- Isolate ForgeJo behind default feature 'forgejo' ([1ffa836](https://git.kemitix.net/kemitix/git-next/commit/1ffa8366e0ef919460464666a042d575822b8919))
- Allow repo config to be specified in server config ([0105631](https://git.kemitix.net/kemitix/git-next/commit/0105631e3ac27eee13b456f9055371bd0d3f5a06))
- Add webhook URL field to server config ([069b313](https://git.kemitix.net/kemitix/git-next/commit/069b313fc33f17b1744f7c22a2c7df902fe58860))
- Update next branch when not based on main ([0622e60](https://git.kemitix.net/kemitix/git-next/commit/0622e6092bf05da949903c6c6159e3fd67b099aa))
- Add webhook server ([df2d9d6](https://git.kemitix.net/kemitix/git-next/commit/df2d9d684c5cca1e724d42d3c455ec194a1e876f))
- Implement unregister webhook ([e706080](https://git.kemitix.net/kemitix/git-next/commit/e7060800eb959787c879559856335e53c0c74664))
- Implement register webhook ([dd91aa4](https://git.kemitix.net/kemitix/git-next/commit/dd91aa4f691937110004a059ad4dcff04f987ee7))
- Handle messages received via webhook for ForgeJo ([24cb485](https://git.kemitix.net/kemitix/git-next/commit/24cb485410e2aa54bf60b9eb31644890cdfc3dfd))
- Reschedule ValidateRepo when checks are Pending ([b398ac3](https://git.kemitix.net/kemitix/git-next/commit/b398ac3fd303980070d6e7a9719e34337416c5c1))
- Only accept authorised messages ([64a6b84](https://git.kemitix.net/kemitix/git-next/commit/64a6b84ee4e803a2f73a6c8f657e826fd48ca7a5))
### Miscellaneous Tasks
- Clean up some logging ([8c4ad4b](https://git.kemitix.net/kemitix/git-next/commit/8c4ad4b5348acbbbd4ca529f47dd4f5041ca42cf))
- Don't log fetch url ([fb74879](https://git.kemitix.net/kemitix/git-next/commit/fb74879309892e36eb7c10029049f19c8ea72458))
- Don't log success ([223dd42](https://git.kemitix.net/kemitix/git-next/commit/223dd426c68e8a2d01e9646e2a4880b499edcb1c))
- Reduce logging to debug ([9df732c](https://git.kemitix.net/kemitix/git-next/commit/9df732ce974038c784e60d1f8767b1087b39cb7e))
- Rename type `RepoName` as `RepoAlias` ([b21b808](https://git.kemitix.net/kemitix/git-next/commit/b21b80881eaa9cf0a138c935feca40aba5d1c234))
- Set to 0.2.0 ([3c60ff9](https://git.kemitix.net/kemitix/git-next/commit/3c60ff99ef2642b0ceb927a9076fc0c8cf973479))
### Refactor
- Extract get_commit_histories ([2055421](https://git.kemitix.net/kemitix/git-next/commit/205542106781b50ff0b9fc3d3db58b28502d7a77))
### Testing
- Create stub mock forge ([3bbe9ab](https://git.kemitix.net/kemitix/git-next/commit/3bbe9abbd97e7b986a1b02f4ab359f0b9b5b31a2))
### Build
- Add validate-dev-branch recipe ([eca45d0](https://git.kemitix.net/kemitix/git-next/commit/eca45d02384b92c5da7b3293b606cee2b431cae3))
## [0.1.2] - 2024-04-12
[7d3ebfb](https://git.kemitix.net/kemitix/git-next/commit/7d3ebfb320269f00895989b37e192705d4b1c4a6)...[8ed942a](https://git.kemitix.net/kemitix/git-next/commit/8ed942a50137f1932500fa4cd64d1484600fb3d8)
### Bug Fixes
- Remove extra StartRepo message ([8ed942a](https://git.kemitix.net/kemitix/git-next/commit/8ed942a50137f1932500fa4cd64d1484600fb3d8))
## [0.1.1] - 2024-04-11
[c9d52a5](https://git.kemitix.net/kemitix/git-next/commit/c9d52a5b7f230606449b6dc7b2b496ce4bc83dc7)...[7d3ebfb](https://git.kemitix.net/kemitix/git-next/commit/7d3ebfb320269f00895989b37e192705d4b1c4a6)
### Build
- Include default toml files in build context ([fad4867](https://git.kemitix.net/kemitix/git-next/commit/fad4867402c92543cef0a81f37d5f012f2ce45a0))
- Version set to 0.1.1 ([7d3ebfb](https://git.kemitix.net/kemitix/git-next/commit/7d3ebfb320269f00895989b37e192705d4b1c4a6))
## [0.1.0] - 2024-04-11
### Bug Fixes
- Parse the server file with sections ([f1041d6](https://git.kemitix.net/kemitix/git-next/commit/f1041d6fe6f0df35e01a72afae73898ee6c24f53))
- Update case for default forge_type ([4b64aa5](https://git.kemitix.net/kemitix/git-next/commit/4b64aa5a141e40f49444af0b46b4702002a70750))
- Fix typo ([b66b70c](https://git.kemitix.net/kemitix/git-next/commit/b66b70c08b18bb94d6f2c5ed71f4fa454389a944))
- Stop logging all network requests ([0721b63](https://git.kemitix.net/kemitix/git-next/commit/0721b63448f0f075bc64343f0362b2fdda4e7fff))
- Doesn't properly detect when dev or next are ahead ([50a56aa](https://git.kemitix.net/kemitix/git-next/commit/50a56aadee435b2369a4f709ba939f838adf3216))
- Pause before checking CI status when just updated branch ([9469d27](https://git.kemitix.net/kemitix/git-next/commit/9469d274767d335e1eb95b2969643b071400651b))
- Reduce complexity of StartMonitoring handler ([7dab1da](https://git.kemitix.net/kemitix/git-next/commit/7dab1da44b9ad3d4ebfcee2241425e5fa78c0e13))
- Clean up instrumentation ([1c9f7cb](https://git.kemitix.net/kemitix/git-next/commit/1c9f7cb4ea3387518540f1cd6bb04ba012ef86e6))
- Restore lost sleep ([bb4d171](https://git.kemitix.net/kemitix/git-next/commit/bb4d171174f4e7372fa4648ef70cf2621daa8fb7))
### Documentation
- Add initial notes ([856a73f](https://git.kemitix.net/kemitix/git-next/commit/856a73fa9857803a3b258778a3f7f4fd71ea7620))
- Add note on installing git-hooks ([9580f88](https://git.kemitix.net/kemitix/git-next/commit/9580f88c2f0e590e5f90bf049aca027117f9d7eb))
- Add build status badge ([634b040](https://git.kemitix.net/kemitix/git-next/commit/634b04070844f953b3a400a6d8ab2c991a73ff80))
- Update copyright name ([e863f4a](https://git.kemitix.net/kemitix/git-next/commit/e863f4ad4aad8232f97e895d0bdcc36198baef85))
### Features
- Parse commands from args ([dd124d1](https://git.kemitix.net/kemitix/git-next/commit/dd124d11ae7ee0b40fa49897d1aaaaebbf792cb4))
- Creates a default configuration file ([aa27e96](https://git.kemitix.net/kemitix/git-next/commit/aa27e96d538f86f393d1e768201ea5f2050e246b))
- Creates a default server configuration file ([1e3ca5b](https://git.kemitix.net/kemitix/git-next/commit/1e3ca5b7119d4b243f005be0d08fa49c0cbfd62e))
- Add stub for server start command ([e25ff50](https://git.kemitix.net/kemitix/git-next/commit/e25ff500d80855d42ca04373e23217888898b04b))
- Log when not overwritting exiting file ([d341647](https://git.kemitix.net/kemitix/git-next/commit/d341647d7dcd1f58daf9e4a006e311ec5501389e))
- Add Filesystem to wrap fs operations ([1207bbc](https://git.kemitix.net/kemitix/git-next/commit/1207bbcff3ace7af19eeabb1a73f2a9554ca4306))
- Add initial example server configuration ([7890423](https://git.kemitix.net/kemitix/git-next/commit/78904230776e2c820cbb75538059cc8410c1aa2e))
- Add read_file() ([90f9ab8](https://git.kemitix.net/kemitix/git-next/commit/90f9ab8e96f16a71bdf0ff5c9fba0a8faab9d089))
- Parse file ([efb55e4](https://git.kemitix.net/kemitix/git-next/commit/efb55e4b3bba61081d2641e244777d7389536fe2))
- Rename property type as forge_type ([cb0a7f7](https://git.kemitix.net/kemitix/git-next/commit/cb0a7f7cd722d3e2c6127fccdf3b4064340c9011))
- Rename propery url as hostname ([a3c52c7](https://git.kemitix.net/kemitix/git-next/commit/a3c52c77611588676b4aff589375b3b0665b33ab))
- Implement Display for ForgeType ([dc41105](https://git.kemitix.net/kemitix/git-next/commit/dc4110596f9b4e2e2203935c048b3ae94a4f38f2))
- Log error when fails to load config ([ef75ecd](https://git.kemitix.net/kemitix/git-next/commit/ef75ecda08e1c0899ac0735454deb408ced75bd6))
- Log parsed config ([1de2bd2](https://git.kemitix.net/kemitix/git-next/commit/1de2bd2ecb0806a28dfebb566388605d97409c18))
- Add ForgeDetails and RepoDetails types ([3ac4894](https://git.kemitix.net/kemitix/git-next/commit/3ac4894d68bb4a7a0a78ce1b4b85bf7ae8aa5d9d))
- Create stub RepoActor ([eacefef](https://git.kemitix.net/kemitix/git-next/commit/eacefefe201d56dc59eabb4e0cc5aa67e07db23d))
- Start repo actors ([ca673f9](https://git.kemitix.net/kemitix/git-next/commit/ca673f95456e901ac5212c9befa43138a914309a))
- Repos specify which branch to read config from ([e9685ab](https://git.kemitix.net/kemitix/git-next/commit/e9685abf5fc29fe2bee0fd7140f72e2264fc8bd0))
- Impl Display for RepoDetails ([7770503](https://git.kemitix.net/kemitix/git-next/commit/77705035f9b2a0c7b10f8a151ab068714a41745e))
- Make RepoDetails Clone ([a4e781d](https://git.kemitix.net/kemitix/git-next/commit/a4e781d4e40580622baf2b4a901c7f619ceb274a))
- Parse RepoConfig ([c3f2266](https://git.kemitix.net/kemitix/git-next/commit/c3f2266dc1ab507a9f217c005bbee7372d8f3dfb))
- Add RepoActor::new ([abbd2e6](https://git.kemitix.net/kemitix/git-next/commit/abbd2e66e6c8143cdeac4e5094f6f0e6a4ebce5a))
- Add ApiToken newtype ([3c4a0d5](https://git.kemitix.net/kemitix/git-next/commit/3c4a0d52b1653aa14828fcff1591f669ad88023f))
- Use accesors for hostname and user ([be01d10](https://git.kemitix.net/kemitix/git-next/commit/be01d106a4cfea0a912c5b07006f5e13938e1543))
- Replace own filesystem module with kxio lib ([f255c44](https://git.kemitix.net/kemitix/git-next/commit/f255c44dfae61655c7e1e909d66d6b2a8eb8054b))
- Define default repo config ([25a1886](https://git.kemitix.net/kemitix/git-next/commit/25a1886e942b0f7e862eb94d9f4099ecb4846b3f))
- Load repo config ([b093c00](https://git.kemitix.net/kemitix/git-next/commit/b093c002d4ff6e11ce3149c4069b54e317765662))
- Verify branches exist in repo ([ca37045](https://git.kemitix.net/kemitix/git-next/commit/ca37045e3aba342eceeef18127ea6ff89ed66e64))
- Create stub for validating branch positions ([bdea942](https://git.kemitix.net/kemitix/git-next/commit/bdea942bcbd8fdc9b706bbe9631ba88ce904d308))
- Fetch commit histories ([9eb7660](https://git.kemitix.net/kemitix/git-next/commit/9eb7660f7bbfe8d8a82776351e4ea3c5f16e7247))
- Validate branch head positions ([3203bbd](https://git.kemitix.net/kemitix/git-next/commit/3203bbd967d84d7dba0c43a7db7d857fecd55e48))
- Assess next action for repo ([70e0f94](https://git.kemitix.net/kemitix/git-next/commit/70e0f94042856c824127d97a55d89ffee699b205))
- Add stub for branch::advance_main ([7ed30fc](https://git.kemitix.net/kemitix/git-next/commit/7ed30fc382d95f2a4ad3dbd15d9a0fdaedd2f273))
- Add message and handler for AdvanceMainTo(Commit) ([ad7d513](https://git.kemitix.net/kemitix/git-next/commit/ad7d5134810c9ec2175f15494defc6bab6a586a9))
- Add deserialise types for commit status ([8ad84bc](https://git.kemitix.net/kemitix/git-next/commit/8ad84bc72b8e58eab208941503da47ac19ede551))
- Add stub for forge::forgejo::get_commit_status ([a7a3f8a](https://git.kemitix.net/kemitix/git-next/commit/a7a3f8a67b0b8ae9f58a17431cf3db59f440f432))
- Implement repo::status::check_next ([c66170c](https://git.kemitix.net/kemitix/git-next/commit/c66170c3b442f1f25b7600f595c9dd5540e7b390))
- Next commit status is returned as pass, fail ro pending ([546d915](https://git.kemitix.net/kemitix/git-next/commit/546d91554c7e1fe45f87ea0f9ef3d891436a75c7))
- Implement Display for forge::Commit ([d64024e](https://git.kemitix.net/kemitix/git-next/commit/d64024e1abb439283ae0f244efba506fccb54946))
- Add marker info logs for advance main and next ([5c4b745](https://git.kemitix.net/kemitix/git-next/commit/5c4b745c00a71af7d15e83d4a6ff679484709602))
- Log returned status for next branch ([e27b050](https://git.kemitix.net/kemitix/git-next/commit/e27b050a093df37719a966e18e49d940105202ed))
- Implement forge::forgejo::get_commit_history ([a5e9421](https://git.kemitix.net/kemitix/git-next/commit/a5e94214053022f82004001aaf83110d93e9a901))
- Implement advancing main branch to the next commit ([3a761b5](https://git.kemitix.net/kemitix/git-next/commit/3a761b5b21f464eac889209234d0ff4a7cdd6661))
- Add branch::reset function ([ed1ab6f](https://git.kemitix.net/kemitix/git-next/commit/ed1ab6faa519969c39c054af560a0b7ee08c18c5))
- Force push next branch to main when it isn't a dev ancestor ([115b353](https://git.kemitix.net/kemitix/git-next/commit/115b353389365795afbc688c45578bf2bb04b4f2))
- Git command output is suppressed ([f7dc27f](https://git.kemitix.net/kemitix/git-next/commit/f7dc27f67ec3d452c7f4f7a3a8f919d9000076ba))
- When no action to take, wait 10 seconds then restart ([c9d52a5](https://git.kemitix.net/kemitix/git-next/commit/c9d52a5b7f230606449b6dc7b2b496ce4bc83dc7))
### Miscellaneous Tasks
- Cargo init ([1dc9c38](https://git.kemitix.net/kemitix/git-next/commit/1dc9c38165ad99d649f32250728124ab2a77d188))
- Add cc-cli support for conventional commits ([4e27cd0](https://git.kemitix.net/kemitix/git-next/commit/4e27cd0719bee8c3151434feda7ed4a2617ebd55))
- Remove redundant logging ([3a253d8](https://git.kemitix.net/kemitix/git-next/commit/3a253d8568b3c95488474d7008a264fec1ca09fe))
- Remove cc-cli from dev dependencies ([e63f54d](https://git.kemitix.net/kemitix/git-next/commit/e63f54d4b969393e67311bc28aae436cdd06d6fe))
- Configure Renovate (#5) ([4a4da2f](https://git.kemitix.net/kemitix/git-next/commit/4a4da2f8c0c8a60b1d4ecfa76cda05228f72f758)), Co-authored-by:Renovate Bot <renovate@kemitix.net>, Reviewed-on:https://git.kemitix.net/kemitix/git-next/pulls/5, Co-authored-by:renovate <renovate@noreply.kemitix.net>, Co-committed-by:renovate <renovate@noreply.kemitix.net>
- Rename server.rs as server/mod.rs ([1d42c63](https://git.kemitix.net/kemitix/git-next/commit/1d42c63e53335f4f42b25c254cd9ac5cea558d45))
- Add anyhow dependency ([7155cf7](https://git.kemitix.net/kemitix/git-next/commit/7155cf7628fec25ac98a1b035c0e446328cd3a9b))
- Cargo clippy fixes ([cd8d236](https://git.kemitix.net/kemitix/git-next/commit/cd8d2369409cfcfb2bc349fb3402ae627885213d))
- Don't track user files ([cf10aa3](https://git.kemitix.net/kemitix/git-next/commit/cf10aa39126494a7be3a05abdce26a701a6e6fa3))
- Add assert2 dependency ([376830c](https://git.kemitix.net/kemitix/git-next/commit/376830c8a6be56328cf1143f2ee5ffdda07373fe))
- Add config file ([a7a64f5](https://git.kemitix.net/kemitix/git-next/commit/a7a64f5a07a957e265727485e85d811a0ba27b37))
### Refactor
- Use info! rather than event! ([2c07bb5](https://git.kemitix.net/kemitix/git-next/commit/2c07bb5af3089d78373ee262cd598b52bfa0a38a))
- Rename Config as ServerConfig ([d5e9b14](https://git.kemitix.net/kemitix/git-next/commit/d5e9b14e3d6b0797179bc6f3fadbd90bfe396ccc))
- Compare whole server config in one go ([aaaa975](https://git.kemitix.net/kemitix/git-next/commit/aaaa9759115128c000c2551a36328614e9114120))
- Reduce complexity starting server ([7e08640](https://git.kemitix.net/kemitix/git-next/commit/7e08640743fa68bf924f65e54405646c36ca9cf3))
- Inline console_subscriber ([0b85ac3](https://git.kemitix.net/kemitix/git-next/commit/0b85ac3f8d213b7c52535791f1ed79eafebba842))
- Pass RepoDetails by reference ([d2d49f3](https://git.kemitix.net/kemitix/git-next/commit/d2d49f353c8cd09ca75646ccba6b585921ed0c8a))
- Reuse branch::reset to advance main branch to next ([ab58981](https://git.kemitix.net/kemitix/git-next/commit/ab58981f87cacfc971dc1f269d272f2023e4e3ad))
- Reuse branch::reset to advance main branch to next ([6bad8a2](https://git.kemitix.net/kemitix/git-next/commit/6bad8a27f70b68699c9deeb1d567d60cc12fcedb))
- Reuse branch::reset to advance next towards dev ([e0b1571](https://git.kemitix.net/kemitix/git-next/commit/e0b15712c2cfe5bf226055edf6b2ef7e04744f62))
- Rename ResetForce::Normal as None ([ec258bc](https://git.kemitix.net/kemitix/git-next/commit/ec258bca97eb79b8720dfa7cd4b44feaa3e548eb))
### Build
- Add cargo config file ([866d386](https://git.kemitix.net/kemitix/git-next/commit/866d38674a15aa19d8965f940c03c5b6fdf1432d))
- Add initial CI ([1d03fbf](https://git.kemitix.net/kemitix/git-next/commit/1d03fbfb06780fb44e4c884345b68c1165763dc3))
- Add bacon.toml config ([cb46138](https://git.kemitix.net/kemitix/git-next/commit/cb46138cdc5473610a3f2445c647c4eecab2a9f6))
- Add Dockerfile and builder ([b5a1dd4](https://git.kemitix.net/kemitix/git-next/commit/b5a1dd4326855a63701ac2720c67f749160d9584))
- TODO checker ignores git hook samples ([161377f](https://git.kemitix.net/kemitix/git-next/commit/161377f54d8bd1255fa724c522c920cf77b4c67d))
- Run on cron and push to main ([ac37e9e](https://git.kemitix.net/kemitix/git-next/commit/ac37e9e19951fc991b161015de3f32dac79a6b0a))
- Don't include Cargo.lock in image ([edf551b](https://git.kemitix.net/kemitix/git-next/commit/edf551b72a5a3dbdabbe7274cd89300875bbb8af))
- Don't specify patch level for todo checker ([d2e0a7c](https://git.kemitix.net/kemitix/git-next/commit/d2e0a7ce8cde7a2ec66731195f0e80e8b9d84266))
- Don't run todo checker on cron ([1b0c09d](https://git.kemitix.net/kemitix/git-next/commit/1b0c09d3fe370cdacedc5a7817fbd21cadf01649))
- Run checks against next branch too ([cdaca82](https://git.kemitix.net/kemitix/git-next/commit/cdaca8258d24fc531f25667f8f5aa1c4d1249cc9))
- Split updating docker builder into seperate job ([0b5c91f](https://git.kemitix.net/kemitix/git-next/commit/0b5c91fedbb1909e188f3fb67a3b0dfe9b6289ba))
- Merge and rename jobs ([ca30d1b](https://git.kemitix.net/kemitix/git-next/commit/ca30d1bd11683ccd716e24267344679ec1d3445f))
- Restore dropped cargo build ([cd18dbe](https://git.kemitix.net/kemitix/git-next/commit/cd18dbe7812c33d99efd8fa3ade82477ff6436a6))
### Config
- Add token field to Forge ([a148493](https://git.kemitix.net/kemitix/git-next/commit/a1484939ab9b0c76a5df9a000318ae2ecca94f72))
<!-- generated by git-cliff -->