Paul Campbell
ea9a858f48
All checks were successful
Rust / build (push) Successful in 1m17s
ci/woodpecker/push/push-next Pipeline was successful
ci/woodpecker/push/cron-docker-builder Pipeline was successful
ci/woodpecker/push/tag-created Pipeline was successful
ci/woodpecker/tag/push-next Pipeline was successful
ci/woodpecker/tag/cron-docker-builder Pipeline was successful
ci/woodpecker/tag/tag-created Pipeline was successful
### Bug Fixes - Github: use correct url to check CI status ([46e2871
](46e2871e17
)) - Github: as soon as any check fails, ignore any pending ([7b280a2
](7b280a2a0a
)) ### Documentation - Update installation instructions ([044790a
](044790a019
)) - Flesh out and update README ([8d42945
](8d42945c37
)) - Fix typos and clarifications ([9462957
](9462957c5e
)) ### Miscellaneous Tasks - Remove unused dependencies ([235aee8
](235aee8b11
)) - Add grcov-coverage as an alternate report generation recipe ([d67b821
](d67b821130
)) - Ignore coverage metadata (profraw files) ([8609652
](8609652928
)) ### Refactor - Config: use thiserror and move tests about ([0b8e41a
](0b8e41a8ec
)) - Git: use thiserror and cleanup errors ([621e599
](621e599b31
)) - Server: use thiserror ([e29c274
](e29c274aaf
)) ### Testing - Add more tests to config crate ([1010eae
](1010eaec64
)) - Add more tests to forge crate ([98839c8
](98839c8a00
)) - Add more tests to forge-forgejo crate ([c189aa3
](c189aa3ad3
)) - Add more tests to forge-github crate ([309e523
](309e523cfe
))
44 KiB
44 KiB
Changelog
All notable changes to this project will be documented in this file.
[0.7.1] - 2024-06-06
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)
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
Bug Fixes
- Add missing list webhooks implementation (1eb4ed6)
Features
Miscellaneous Tasks
- Release 0.7.0 (c1c62e7)
[0.6.2] - 2024-05-29
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
Bug Fixes
- New commit_log matches original from API request (3642b2c)
[0.6.0] - 2024-05-25
Features
- Config file watcher will respond to touch (ebbb655)
Miscellaneous Tasks
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
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
Bug Fixes
- Invalid webhook authorisations (e5744e8)
[0.5.0] - 2024-05-20
Bug Fixes
Documentation
Features
- Display expected auth in logs in invalid request (c6c8dce)
Miscellaneous Tasks
- Version set to 0.5.0 (692a860)
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
- Add more tests (f4b8401)
Build
- Validate format locally (7b1575e)
[0.4.1] - 2024-05-19
Miscellaneous Tasks
- Version set to 0.4.1 (d241273)
Build
- Upgrade to clang-16 (7b0d567)
Revert
- "build(woodpecker): remove redundant build of a builder images" (8e22a47)
[0.4.0] - 2024-05-18
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
- Add tests (a7e7d12)
- Add some tests (ac3e1be)
- Add more tests (896e1cb)
- Add more tests (c3a5e50)
- Make repository more testable (58e991b)
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
Refactor
- Replace boilerplate with derive_more (a4694d4)
Build
- Install git (c7c95a5)
[0.3.2] - 2024-05-13
Features
- Add git_dir value to error when reset fails (1e38330)
[0.3.1] - 2024-05-12
Bug Fixes
- Clippy fixes for tests (a8eedfc)
Miscellaneous Tasks
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
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
[0.2.0] - 2024-04-14
Bug Fixes
- Avoid using terrors::OneOf across an await boundary (0b427f1)
- Don't reload config when updating next branch (3735afb)
- Prevent losing a task waker (869935d)
- Treat a blank status check result as pending (e8d174e)
- Don't log url containing API token (ee9cc53)
- Visibility on methods (af221f8)
- Always reschedule to validate repos (e272ca2)
- Update rust crate gix to 0.62 (#40) (cfa25b7), Co-authored-by:Renovate Bot renovate@kemitix.net, Reviewed-on:#40, Co-authored-by:renovate renovate@noreply.kemitix.net, Co-committed-by:renovate renovate@noreply.kemitix.net
- Revalidate positions in more conditions (4c4ac4d)
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
- Clean up some logging (8c4ad4b)
- Don't log fetch url (fb74879)
- Don't log success (223dd42)
- Reduce logging to debug (9df732c)
- Rename type
RepoName
asRepoAlias
(b21b808) - Set to 0.2.0 (3c60ff9)
Refactor
- Extract get_commit_histories (2055421)
Testing
- Create stub mock forge (3bbe9ab)
Build
- Add validate-dev-branch recipe (eca45d0)
[0.1.2] - 2024-04-12
Bug Fixes
- Remove extra StartRepo message (8ed942a)
[0.1.1] - 2024-04-11
Build
[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
- Add initial notes (856a73f)
- Add note on installing git-hooks (9580f88)
- Add build status badge (634b040)
- Update copyright name (e863f4a)
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::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::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
- Cargo init (1dc9c38)
- Add cc-cli support for conventional commits (4e27cd0)
- Remove redundant logging (3a253d8)
- Remove cc-cli from dev dependencies (e63f54d)
- Configure Renovate (#5) (4a4da2f), Co-authored-by:Renovate Bot renovate@kemitix.net, Reviewed-on:#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)
- Add anyhow dependency (7155cf7)
- Cargo clippy fixes (cd8d236)
- Don't track user files (cf10aa3)
- Add assert2 dependency (376830c)
- Add config file (a7a64f5)
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)