Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,25 @@ All notable changes to this project will be documented in this file.

- _No unreleased changes._

## [0.26.0]

### Added
- **Branch Maintenance Shortcuts:** Introduced one-click actions in the repository form to prune stale remote branches and clean merged local branches, wiring the renderer UI to new IPC handlers that execute the underlying Git commands with structured success/error messaging. ([#101](https://github.com/beNative/git-automation/pull/101))

### Changed
- **Structured Repository Logging:** Expanded structured logging coverage across the Repo Form modal and Repo Edit view so branch maintenance, release management, and configuration saves emit consistent diagnostics for the debug console and log files. ([#102](https://github.com/beNative/git-automation/pull/102), [#103](https://github.com/beNative/git-automation/pull/103), [#104](https://github.com/beNative/git-automation/pull/104))
- **Repository Form Layout:** Tightened padding around action buttons and form panes to better fit long workflows without scrolling as frequently. ([#99](https://github.com/beNative/git-automation/pull/99), [#100](https://github.com/beNative/git-automation/pull/100))
- **Browser Demo Parity:** Stubbed the project intelligence, branch maintenance, and release APIs inside the in-browser demo so product walkthroughs surface realistic responses while exercising the new Git maintenance flows. ([#101](https://github.com/beNative/git-automation/pull/101))

### Fixed
- **Concurrent Saves:** Prevented repository updates from silently failing when background tasks are still running, restoring reliable persistence. ([#98](https://github.com/beNative/git-automation/pull/98))
- **Windows Checksum Refresh:** Ensured the Windows manifest normalization script rewrites installer filenames before computing checksums so automatic updates pick up the latest builds. ([#96](https://github.com/beNative/git-automation/pull/96))
- **Repo Form Logging Regression:** Removed a duplicate logger declaration that caused symbol conflicts in the repository configuration modal. ([#105](https://github.com/beNative/git-automation/pull/105))
- **About Modal Polish:** Cleaned up redundant controls in the About dialog to match the streamlined layout. ([#97](https://github.com/beNative/git-automation/pull/97))

### Documentation
- Documented the Git branch maintenance utilities, structured logging coverage, and UI spacing refinements introduced in version `0.26.0` across the README and manuals.

## [0.25.9]

### Added
Expand Down
6 changes: 3 additions & 3 deletions FUNCTIONAL_MANUAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ Displays a detailed list of commits or revisions, including the author, date, an
#### Branches Tab
Provides a unified interface to inspect branches for both Git and SVN repositories. The dropdown is backed by the shared `list-branches` IPC handler, so Git and SVN cards use the same data source on the dashboard.

- **Git Repositories:** View all local and remote branches, create or delete branches, and merge another branch into your current one.
- **Git Repositories:** View all local and remote branches, create or delete branches, merge another branch into your current one, and trigger branch maintenance utilities. The toolbar now surfaces dedicated buttons to **Prune Remotes** (runs `git remote prune` across every configured remote) and **Clean Local Branches** (deletes merged, unprotected branches while respecting the active checkout). Success and failure states surface structured toasts and log entries for easy triage.
- **SVN Repositories:** Browse available branches (including trunk) and switch the working copy. Destructive operations such as creating or deleting branches remain Git-only.

#### Releases Tab (Git Only)
Expand Down Expand Up @@ -216,6 +216,6 @@ For advanced users, the settings view includes a **"JSON Config"** tab. This sec
- **Export Settings:** Click the "Export Settings" button to save your current configuration into a compressed `.zip` archive. This is useful for creating backups or sharing your setup.
- **Import Settings:** Click the "Import Settings" button. You can select a `.zip` archive (created via the export feature) or a raw `.json` file to restore a configuration. This will overwrite your current settings and restart the application.

### Documentation Status for 0.25.9
### Documentation Status for 0.26.0

- Captured the normalized Windows installer workflow, the GitHub updater diagnostics improvements, and the release manifest verification tooling introduced in version `0.25.9`.
- Documented the Git branch maintenance toolbar, structured logging coverage for repository edits, and layout tightening delivered in version `0.26.0`.
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ This application provides a simple, powerful dashboard to manage and automate th
- **Parallel Execution:** Run tasks on multiple repositories at the same time without waiting.
- **One-Click Update Check:** A "Check Updates" button fetches the latest information from all remotes, showing an "Updates Available" indicator on repositories that are behind.
- **Detailed VCS Status:** See ahead/behind status (Git) and a summary of file changes directly on the dashboard.
- **Branch Management:** Quickly switch branches from the dashboard. Git repositories can view, create, delete, and merge branches from the configuration view, while SVN repositories can browse branches/trunk and switch working copies.
- **Branch Management:** Quickly switch branches from the dashboard. Git repositories can view, create, delete, and merge branches from the configuration view, prune stale remote references, and clean up merged local branches in one click, while SVN repositories can browse branches/trunk and switch working copies.
- **Dirty Working Tree Safety:** Task runs are automatically paused when uncommitted changes are detected, giving you options to stash, force, or ignore selected files before continuing.
- **GitHub Release Management (Git):** See the latest release on the dashboard, and view, create, edit, and manage all your project's releases directly from the configuration view.
- **Commit History:** View the commit history for any Git or SVN repository, with **a stable, non-flickering UI**, search, and load-on-demand.
Expand Down Expand Up @@ -75,9 +75,9 @@ Follow this checklist when preparing a new minor or patch release:
**Release Type** selector to the intended state (Full Release for GA builds, Draft or Pre-release as needed). Paste the freshly
written changelog entry into the release body so the GitHub notes exactly match the repository history, then publish.

### Documentation Status for 0.25.9
### Documentation Status for 0.26.0

- Documented the release manifest normalization script, CI manifest verification, and auto-update diagnostics refinements delivered in version `0.25.9`.
- Documented the new Git branch maintenance actions, structured repository form logging, and UI layout refinements delivered in version `0.26.0`.

---
_For developer information, including how to run this project in development mode or build it from source, please see the **Technical Manual** tab in the Info Hub._
4 changes: 2 additions & 2 deletions TECHNICAL_MANUAL.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,9 +98,9 @@ Use this process when shipping a new minor update or bugfix:
6. **Validate Update Metadata:** From the project root, execute `node electron/scripts/normalize-win32-artifacts.mjs` and confirm the `release/` directory contains `latest.yml` (x64), `latest-win32.yml` (ia32), and matching installer names. This verification prevents shipping a release without the updater manifests that GitHub users rely on.
7. **Publish on GitHub:** Draft a new release on GitHub, attach the installers from the `release/` folder, verify the tag/version details, and explicitly set the **Release Type** selector to match your intent (Full Release for GA builds or Draft/Pre-release when staging). Paste the current changelog entry into the notes so the GitHub release matches the repository history, then publish.

### Documentation Status for 0.25.9
### Documentation Status for 0.26.0

- Recorded the Windows manifest normalization workflow, CI manifest verification gate, and enhanced auto-update diagnostics required for version `0.25.9`.
- Documented the new branch maintenance IPC handlers, structured repository edit logging, and renderer layout refinements introduced in version `0.26.0`.
## 7. Automatic Updates

The application is configured to automatically check for updates on startup using the `electron-updater` library.
Expand Down
4 changes: 2 additions & 2 deletions docs/keyboard-shortcut-editor.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,6 @@ The catalog defines the canonical list of actions and their defaults.
## Future Hooks
- The structure supports hooking into a runtime shortcut registry (e.g., via a dedicated context) by indexing `settings.keyboardShortcuts.bindings`. Any consumer can reuse `shortcutKey` and the catalog to register listeners or show active shortcut hints. The state object is already versioned (`version: 1`) to accommodate future schema migrations.【F:keyboardShortcuts.ts†L285-L313】【F:types.ts†L23-L49】

## Documentation Status for 0.25.9
- Re-validated that the shortcut editor architecture, UI flows, and persistence notes above still reflect the current implementation for version `0.25.9`. No technical adjustments were required beyond recording this confirmation for the release audit trail.
## Documentation Status for 0.26.0
- Re-validated that the shortcut editor architecture, UI flows, and persistence notes above still reflect the current implementation for version `0.26.0`. The 0.26.0 branch maintenance and logging updates do not affect the shortcut editor, so no changes were required beyond recording this confirmation for the release audit trail.

41 changes: 41 additions & 0 deletions docs/releases/0.26.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Git Automation Dashboard 0.26.0 Release Notes

## Summary
Git Automation Dashboard 0.26.0 introduces Git branch maintenance shortcuts alongside expanded structured logging so operators can prune stale remotes, clean merged branches, and audit every configuration change with clear diagnostics. UI refinements keep the repository form compact, and the browser demo now mirrors the new APIs for walkthroughs.

## What's Changed

### Git Branch Maintenance
- Added **Prune Remotes** and **Clean Local Branches** buttons to the repository form, wiring them to new Electron IPC handlers that execute the corresponding Git commands and refresh repository state automatically. ([#101](https://github.com/beNative/git-automation/pull/101))

### Observability & Logging
- Instrumented the Repo Form modal, branch actions, and Repo Edit view with structured logging so maintenance operations, release edits, and configuration saves emit consistent telemetry to the debug console and log files. ([#102](https://github.com/beNative/git-automation/pull/102), [#103](https://github.com/beNative/git-automation/pull/103), [#104](https://github.com/beNative/git-automation/pull/104))

### UI & Developer Experience
- Tightened padding across the repository form to fit dense workflows without excessive scrolling. ([#99](https://github.com/beNative/git-automation/pull/99), [#100](https://github.com/beNative/git-automation/pull/100))
- Updated the About dialog copy and controls to match the streamlined layout. ([#97](https://github.com/beNative/git-automation/pull/97))
- Expanded the in-browser demo stubs to simulate project intelligence, branch maintenance, and release APIs so product demos reflect the latest capabilities. ([#101](https://github.com/beNative/git-automation/pull/101))

### Bug Fixes
- Restored repository save reliability while automation tasks are running. ([#98](https://github.com/beNative/git-automation/pull/98))
- Ensured Windows manifest normalization refreshes checksums so automatic updates detect the latest installers. ([#96](https://github.com/beNative/git-automation/pull/96))
- Resolved a duplicate logger declaration that caused Repo Form symbol conflicts. ([#105](https://github.com/beNative/git-automation/pull/105))

## Breaking Changes
- None. This release is backwards compatible.

## Upgrade Notes
1. Encourage maintainers to run the new **Prune Remotes** and **Clean Local Branches** actions after fetching branches to keep dashboards tidy before packaging a release.
2. Continue running `node electron/scripts/normalize-win32-artifacts.mjs` after `npm run pack` so the refreshed manifest metadata is captured before uploading installers.

## Acknowledgements
- Pull Request [#96](https://github.com/beNative/git-automation/pull/96) – Fix Windows automatic update checksum error.
- Pull Request [#97](https://github.com/beNative/git-automation/pull/97) – Update About box with new text and buttons.
- Pull Request [#98](https://github.com/beNative/git-automation/pull/98) – Fix save errors in running task.
- Pull Request [#99](https://github.com/beNative/git-automation/pull/99) – Reduce `.p-4` padding to 0.5rem.
- Pull Request [#100](https://github.com/beNative/git-automation/pull/100) – Reduce button paddings to 0.2rem.
- Pull Request [#101](https://github.com/beNative/git-automation/pull/101) – Add buttons to prune and delete branches.
- Pull Request [#102](https://github.com/beNative/git-automation/pull/102) – Add logging to RepoEditView methods.
- Pull Request [#103](https://github.com/beNative/git-automation/pull/103) – Add logging to RepoEditView actions.
- Pull Request [#104](https://github.com/beNative/git-automation/pull/104) – Add logging to RepoFormModal and fetch methods.
- Pull Request [#105](https://github.com/beNative/git-automation/pull/105) – Fix duplicate symbol error in RepoFormModal.
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "git-automation-dashboard",
"version": "0.25.9",
"version": "0.26.0",
"description": "A dashboard to manage and automate the workflow for a set of Git repositories.",
"main": "dist/main.js",
"author": "Tim Sinaeve <tim.sinaeve@gmail.com>",
Expand Down