Skip to content

Releases: fxstein/GoProX

GoProX v01.14.00

29 Jun 22:21
Compare
Choose a tag to compare

GoProX v01.14.00

Changes since v01.13.00

Supported GoPro Models

The following GoPro camera models are currently supported by GoProX:

Model Latest Official Latest Labs
GoPro Max H19.03.02.02.00 H19.03.02.02.70
HERO10 Black H21.01.01.62.00 H21.01.01.62.70
HERO11 Black H22.01.02.32.00 H22.01.02.32.70
HERO11 Black Mini H22.03.02.50.00 H22.03.02.50.71b
HERO12 Black H23.01.02.32.00 H23.01.02.32.70
HERO13 Black H24.01.02.02.00 H24.01.02.02.70
HERO (2024) H24.03.02.20.00 -
HERO8 Black HD8.01.02.51.00 HD8.01.02.51.75
HERO9 Black HD9.01.01.72.00 HD9.01.01.72.70
The Remote GP.REMOTE.FW.02.00.01 -

Core Functionality

  • Enhanced CI/CD Test Workflow: Restructured testing pipeline with proper unit test dependencies

    • Unit tests now run first and integration tests depend on their success
    • Improved error isolation and faster feedback on test failures
    • Consolidated unit test execution with new run-unit-tests.zsh script
    • Fixed CI compatibility issues with absolute path resolution
  • Comprehensive Testing Framework: Enhanced test coverage and reliability

    • Logger unit tests with rotation and performance validation
    • Firmware summary generation tests with custom sorting
    • Proper test artifact management and reporting
    • Integration with CI/CD pipeline for automated validation

Infrastructure

  • Git-Flow Release Process: Implemented native git-flow release automation

    • Automated version bumping and workflow triggering
    • Integrated monitoring and verification system
    • Support for dry-run testing and real releases
    • Proper branch management and cleanup automation
  • Release Automation: Enhanced release process with AI integration

    • Mandatory major changes summary file creation
    • Firmware summary table generation for release notes
    • Automated PR creation and management
    • Comprehensive release validation and monitoring

Beta Release Notes

This is a beta release (01.50.00) that includes significant improvements to the CI/CD pipeline and testing framework. The changes focus on improving development workflow reliability and ensuring code quality through enhanced testing processes.

Issues Addressed

Issue #79: feat: Add firmware summary table to AI release notes

5a33ddb feat: Add firmware summary table to AI release notes (#79)

Issue #78: feat: Multi-channel Homebrew integration with dev/beta/official channels

7df516e feat: Multi-channel Homebrew integration with dev/beta/official channels (#78)

Issue #74: test: git-flow implementation and CI/CD validation

05332a6 test: git-flow implementation and CI/CD validation (#74)

Issue #72: Release Management and Tracking

907afb9 Bump version to v01.14.00 (refs #72)

Issue #20: Workflow: Implement git-flow Model

3e02852 docs: create major changes summary for 01.50.00 beta release (refs #20)
35b9a7d fix: use absolute paths in run-unit-tests.zsh for CI compatibility (refs #20)
c467b9c fix: restructure CI/CD test workflow with proper unit test dependencies (refs #20)
4b7e0b6 docs: add PR assignment and labeling requirements to AI instructions (refs #20)

- Add mandatory PR assignment to creator (default: fxstein)
- Add comprehensive labeling requirements for all PR types
- Include label definitions and selection guidelines
- Provide implementation examples with GitHub CLI commands
- Ensure proper categorization and prioritization of all PRs
24fcc50 fix: skip version match validation for dry-runs in release workflow (refs #20)
05bba7d fix: trigger workflow on current branch instead of default branch (refs #20)
9de2306 fix: lint YAML for branch cleanup workflow (trailing spaces, newline at EOF) (refs #20)
cbeb573 Add PR issue closure rules to AI instructions (refs #20)
117a438 Skip artifact fetching in dry-run mode (refs #20)
c1be792 Skip monitoring in dry-run mode (refs #20)
88fd5cc Fix version parsing regex in full-release script (refs #20)
f941a9a Fix release script to pass intended new version (refs #20)
8d9b970 Fix branch naming and enhance logger with feat/ prefix support (refs #20)
aec1d2a fix(logger): prevent post-execution error trap interference (refs #20)
7f06e8b fix(logger): implement robust error trap to prevent false positives (refs #20)
7c6f46f fix(logger): make error trap conditional to prevent false positives (refs #20)
8fb2ab2 fix(release): add version support for fix branches (refs #20)
f2fbba4 feat(logger): add comprehensive branch type prefix support (refs #20)
d401b34 feat(logger): add branch type prefix to hash display (refs #20)
30e7521 feat(logger): add hash-based branch display for compact logging (refs #20)
5dc2fa4 docs(release): archive AI summary for version 01.12.1-dev (refs #20)
fff6f32 chore(release): bump version to 01.12.1-dev (refs #20)
3d836b0 docs(release): archive AI summary for version 01.12.1-dev (refs #20)
5f6bbe6 fix(release): move handle_summary_cleanup function above usage for correct sourcing (refs #20)
3b959f8 docs(design): add variable prefixing rule to avoid reserved word conflicts (refs #20)
7929cce fix(release): avoid reserved word conflict by prefixing workflow status variable (refs #20)
c41e621 fix(release): move function definitions above usage for correct sourcing (refs #20)
67b6a9a fix(release): make release script robust to repeated runs with no changes (refs #20)
76898b2 fix(release): handle no changes to commit in release process (refs #20)
4116cac docs(ai): add rule prohibiting placeholder release summaries (refs #20)
eea1687 docs(release): create real release summary for 01.12.00 with actual changes (refs #20)
d4e5777 docs(release): add placeholder summary for 01.12.00 release testing (refs #20)
71776d1 chore: clean up uncommitted changes for testing (refs #20)
685fd6f feat(release): integrate mandatory GitHub Actions monitoring into git-flow release process (refs #20)
4f9f7ad docs(release): archive AI summary for version 01.12.1-dev (refs #20)
593ada9 chore(release): bump version to 01.12.1-dev (refs #20)
70dae17 chore: clean up uncommitted changes for git-flow testing (refs #20)
c65d241 ci(test): fix test expectations to match actual goprox graceful error handling (refs #20)
2bc01de ci(test): fix goprox path references in test suites for CI compatibility (refs #20)
c061614 ci(test): add project root to PATH in test runner for CI robustness (refs #20)
1fb7f35 docs(release): archive AI summary for version 01.10.1-dev (refs #20)
f561e9a chore(release): bump version to 01.10.1-dev (refs #20)
7882d49 feat(ai): implement mandatory reading confirmation system (refs #20)
c02a464 docs: extract release summary instructions to dedicated document (refs #20)
92b5145 feat(release): implement comprehensive monitoring and verification system (refs #20)
c3a57e4 docs(release): create test AI summary for git-flow testing v01.10.00 (refs #20)
e5e76e2 fix(logger): use proper zsh syntax and fix logger initialization (refs #20)
df885f0 fix(release): use proper zsh syntax in git-flow scripts (refs #20)
0f89c90 feat(release): implement git-flow release and monitor scripts (refs #20)
b7a7578 docs(release): create test AI summary for git-flow testing (refs #20)
696a1e0 feat: implement git-flow Phase 1 - preparation and documentation (refs #20)

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.13.00

29 Jun 12:07
Compare
Choose a tag to compare

GoProX v01.13.00

Changes since v01.10.00

Issues Addressed

Issue #74: test: git-flow implementation and CI/CD validation

05332a6 test: git-flow implementation and CI/CD validation (#74)
94345fa docs: add repository restructure proposal for modular lib-based architecture (refs #74)

Issue #73: Enhanced Default Behavior: Intelligent Media Management Assistant

a9ac28a feat(docs): create comprehensive implementation plan for enhanced default behaviors (refs #73)
92a28f1 feat(docs): add multi-library support section to default behaviors plan (refs #73)
07d0dd9 docs: clarify that default behavior work belongs to Issue #73 (refs #73)
249e12b docs: align default behaviors plan with project standards (refs #73)
a96c293 docs: add multi-system user scenarios and professional workflow environments (refs #73)

Issue #72: Release Management and Tracking

4c07e17 Bump version to v01.13.00 (refs #72)

Issue #70: Architecture: Establish Design Principles and Architectural Documentation Framework

868bade Add structural change proposal requirements to AI instructions (refs #70)
b1cfff3 Restructure feature-planning to directory-by-issue with descriptive titles (refs #70)
2829e38 Restructure feature-planning directory by issue and add missing issue documentation (refs #70)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

9ba0bc5 Clarify GitHub issue assignment: fxstein is user's official handle (refs #68)
2745b4f Fix terminology inconsistencies: replace 'executive summary' with 'summary' and bash code blocks with zsh (refs #68)
010254c Add terminology standards to AI instructions (refs #68)
a0ea5a9 docs: add mandatory requirement to read Design Principles with AI Instructions (refs #68)
bdfe819 docs(release): rename major changes summary for release 01.10.00 (refs #68)

Issue #67: Enhanced default behavior: Automatic GoPro SD card detection and firmware management

27e0c20 fix(docs): remove macOS files from SD card cleaning preserve patterns (refs #67)
734c45b fix(docs): clarify metadata preservation - cleaning preserves macOS files, formatting only preserves camera metadata (refs #67)
048d108 fix(docs): replace 'format' with 'clean' terminology and add SD card metadata preservation (refs #67)
4831928 fix(docs): change all bash code blocks to zsh in default behaviors doc to match project standards (refs #67)
44ac8c4 docs: add comprehensive testing framework and CI/CD integration plan (refs #67)
4c9f36e docs: add processing order and archive optimization strategy (refs #67)
70f3e87 docs: add comprehensive default behavior enhancement plan (refs #67)

Issue #20: Workflow: Implement git-flow Model

5701adf feat: rename latest channel to dev for better Homebrew conventions (refs #20)

- Rename 'latest' channel to 'dev' for better alignment with industry standards
- Update all scripts, workflows, and documentation to use 'dev' instead of 'latest'
- Update channel switching scenarios and examples
- Maintain full functionality with improved naming conventions
- All channels (dev, beta, official) tested and working correctly
4b7e0b6 docs: add PR assignment and labeling requirements to AI instructions (refs #20)

- Add mandatory PR assignment to creator (default: fxstein)
- Add comprehensive labeling requirements for all PR types
- Include label definitions and selection guidelines
- Provide implementation examples with GitHub CLI commands
- Ensure proper categorization and prioritization of all PRs
24fcc50 fix: skip version match validation for dry-runs in release workflow (refs #20)
05bba7d fix: trigger workflow on current branch instead of default branch (refs #20)
9de2306 fix: lint YAML for branch cleanup workflow (trailing spaces, newline at EOF) (refs #20)
cbeb573 Add PR issue closure rules to AI instructions (refs #20)
117a438 Skip artifact fetching in dry-run mode (refs #20)
c1be792 Skip monitoring in dry-run mode (refs #20)
88fd5cc Fix version parsing regex in full-release script (refs #20)
f941a9a Fix release script to pass intended new version (refs #20)
8d9b970 Fix branch naming and enhance logger with feat/ prefix support (refs #20)
aec1d2a fix(logger): prevent post-execution error trap interference (refs #20)
7f06e8b fix(logger): implement robust error trap to prevent false positives (refs #20)
7c6f46f fix(logger): make error trap conditional to prevent false positives (refs #20)
8fb2ab2 fix(release): add version support for fix branches (refs #20)
f2fbba4 feat(logger): add comprehensive branch type prefix support (refs #20)
d401b34 feat(logger): add branch type prefix to hash display (refs #20)
30e7521 feat(logger): add hash-based branch display for compact logging (refs #20)
5dc2fa4 docs(release): archive AI summary for version 01.12.1-dev (refs #20)
fff6f32 chore(release): bump version to 01.12.1-dev (refs #20)
3d836b0 docs(release): archive AI summary for version 01.12.1-dev (refs #20)
5f6bbe6 fix(release): move handle_summary_cleanup function above usage for correct sourcing (refs #20)
3b959f8 docs(design): add variable prefixing rule to avoid reserved word conflicts (refs #20)
7929cce fix(release): avoid reserved word conflict by prefixing workflow status variable (refs #20)
c41e621 fix(release): move function definitions above usage for correct sourcing (refs #20)
67b6a9a fix(release): make release script robust to repeated runs with no changes (refs #20)
76898b2 fix(release): handle no changes to commit in release process (refs #20)
4116cac docs(ai): add rule prohibiting placeholder release summaries (refs #20)
eea1687 docs(release): create real release summary for 01.12.00 with actual changes (refs #20)
d4e5777 docs(release): add placeholder summary for 01.12.00 release testing (refs #20)
71776d1 chore: clean up uncommitted changes for testing (refs #20)
685fd6f feat(release): integrate mandatory GitHub Actions monitoring into git-flow release process (refs #20)
4f9f7ad docs(release): archive AI summary for version 01.12.1-dev (refs #20)
593ada9 chore(release): bump version to 01.12.1-dev (refs #20)
70dae17 chore: clean up uncommitted changes for git-flow testing (refs #20)
c65d241 ci(test): fix test expectations to match actual goprox graceful error handling (refs #20)
2bc01de ci(test): fix goprox path references in test suites for CI compatibility (refs #20)
c061614 ci(test): add project root to PATH in test runner for CI robustness (refs #20)
1fb7f35 docs(release): archive AI summary for version 01.10.1-dev (refs #20)
f561e9a chore(release): bump version to 01.10.1-dev (refs #20)
7882d49 feat(ai): implement mandatory reading confirmation system (refs #20)
c02a464 docs: extract release summary instructions to dedicated document (refs #20)
92b5145 feat(release): implement comprehensive monitoring and verification system (refs #20)
c3a57e4 docs(release): create test AI summary for git-flow testing v01.10.00 (refs #20)
e5e76e2 fix(logger): use proper zsh syntax and fix logger initialization (refs #20)
df885f0 fix(release): use proper zsh syntax in git-flow scripts (refs #20)
0f89c90 feat(release): implement git-flow release and monitor scripts (refs #20)
b7a7578 docs(release): create test AI summary for git-flow testing (refs #20)
696a1e0 feat: implement git-flow Phase 1 - preparation and documentation (refs #20)
a98ee61 Enhance git-flow implementation with multi-channel Homebrew release support (refs #20)
7f8f455 Focus git-flow implementation plan on pure git-flow scope (refs #20)
1b8a2e7 Remove incorrect date from git-flow implementation plan (refs #20)
9cde934 Create comprehensive git-flow implementation plan for Issue #20 (refs #20)

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.11.00

28 Jun 23:01
41cd9da
Compare
Choose a tag to compare

GoProX v01.11.00

Changes since v01.10.00

Issues Addressed

Issue #75: release: v01.11.00 - git-flow implementation and CI/CD validation

41cd9da release: v01.11.00 - git-flow implementation and CI/CD validation (#75)

Issue #74: test: git-flow implementation and CI/CD validation

94345fa docs: add repository restructure proposal for modular lib-based architecture (refs #74)

Issue #73: Enhanced Default Behavior: Intelligent Media Management Assistant

a9ac28a feat(docs): create comprehensive implementation plan for enhanced default behaviors (refs #73)
92a28f1 feat(docs): add multi-library support section to default behaviors plan (refs #73)
07d0dd9 docs: clarify that default behavior work belongs to Issue #73 (refs #73)
249e12b docs: align default behaviors plan with project standards (refs #73)
a96c293 docs: add multi-system user scenarios and professional workflow environments (refs #73)

Issue #70: Architecture: Establish Design Principles and Architectural Documentation Framework

868bade Add structural change proposal requirements to AI instructions (refs #70)
b1cfff3 Restructure feature-planning to directory-by-issue with descriptive titles (refs #70)
2829e38 Restructure feature-planning directory by issue and add missing issue documentation (refs #70)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

9ba0bc5 Clarify GitHub issue assignment: fxstein is user's official handle (refs #68)
2745b4f Fix terminology inconsistencies: replace 'executive summary' with 'summary' and bash code blocks with zsh (refs #68)
010254c Add terminology standards to AI instructions (refs #68)
a0ea5a9 docs: add mandatory requirement to read Design Principles with AI Instructions (refs #68)
bdfe819 docs(release): rename major changes summary for release 01.10.00 (refs #68)

Issue #67: Enhanced default behavior: Automatic GoPro SD card detection and firmware management

27e0c20 fix(docs): remove macOS files from SD card cleaning preserve patterns (refs #67)
734c45b fix(docs): clarify metadata preservation - cleaning preserves macOS files, formatting only preserves camera metadata (refs #67)
048d108 fix(docs): replace 'format' with 'clean' terminology and add SD card metadata preservation (refs #67)
4831928 fix(docs): change all bash code blocks to zsh in default behaviors doc to match project standards (refs #67)
44ac8c4 docs: add comprehensive testing framework and CI/CD integration plan (refs #67)
4c9f36e docs: add processing order and archive optimization strategy (refs #67)
70f3e87 docs: add comprehensive default behavior enhancement plan (refs #67)

Issue #20: Workflow: Implement git-flow Model

a98ee61 Enhance git-flow implementation with multi-channel Homebrew release support (refs #20)
7f8f455 Focus git-flow implementation plan on pure git-flow scope (refs #20)
1b8a2e7 Remove incorrect date from git-flow implementation plan (refs #20)
9cde934 Create comprehensive git-flow implementation plan for Issue #20 (refs #20)

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.10.00

27 Jun 05:01
Compare
Choose a tag to compare

GoProX v01.10.00

Changes since v01.01.01

New GoPro Models

  • No new GoPro camera models added since v01.01.01

Official Firmware

  • No new official firmware releases added since v01.01.01

Labs Firmware

  • No new GoPro Labs firmware releases added since v01.01.01

Core Functionality

  • Enhanced Logging System: Implemented comprehensive structured logging framework with JSON output, log levels, performance timing, and automatic log rotation
  • Logger Integration: Integrated logging into all firmware scripts, maintenance scripts, and core functionality for improved debugging and monitoring
  • Testing Framework Enhancement: Added dedicated logger unit tests with CI/CD integration and comprehensive test validation
  • Release Process Improvements: Enhanced release workflow with summary file management, dry-run capabilities, and improved automation
  • GitHub Actions Optimization: Fixed workflow configuration issues and improved CI/CD reliability

Infrastructure

  • Documentation Updates: Updated design principles, testing framework documentation, and contributing guidelines to reflect new logging standards
  • Code Quality: Implemented pre-commit hooks for .keep file validation and YAML linting
  • Output Management: Ensured all scripts follow project standards for output file placement in output/ directory

Issues Addressed

Issue #72: Release Management and Tracking

7504959 Bump version to v01.10.00 (refs #72)
6f0a08e Bump version to v01.09.00 (refs #72)
529868c Bump version to v01.08.00 (refs #72)
b4ef28b Bump version to v01.07.00 (refs #72)
cbd87c0 Bump version to v01.06.00 (refs #72)
423e272 docs(release): restore latest-major-changes-since-01.01.01.md for full release (refs #72)
779346d docs(architecture): add configuration-driven release management principle (refs #72)
8a1d768 chore(config): move release-issue.yaml to config/ and update bump-version.zsh (refs #72)

Issue #71: Enhancement: Add Robust Logging to Automation and Release Scripts

41e0c14 Regenerate major changes summary for release base 01.01.01 (refs #71)
6206e7b Fix GitHub Actions workflow: remove conflicting paths-ignore and paths definitions (refs #71)
7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
4c3514d docs: update documentation with new logger capabilities (refs #71)
a4aaab7 docs(release): recreate latest-major-changes-since-01.01.01.md for full release (refs #71)
e14ac66 chore(logging): remove username from log prefix in full-release.zsh (refs #71)
72f9c7d feat(logging): add robust logging, verbosity flag, and error trapping to full-release.zsh (refs #71)
3412dcd Add test output management strategy to compensate for git exclusion (refs #71)
e4e2297 Add comprehensive test media files from multiple GoPro models (refs #71)

Issue #69: Enhancement: Enhanced SD Card Management

47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)
a38d3d3 docs: organize documentation into features/ and issues/ subfolders (refs #69)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

50e33a2 docs(release): rename major changes summary for release 01.09.00 (refs #68)
5da16ea docs(release): update latest major changes summary for release (refs #68)
1ace1c3 fix(release): auto-commit and push latest major changes summary before workflow (refs #68)
540c602 docs(release): rename major changes summary for release 01.08.00 (refs #68)
71388d5 fix(release-notes): always include latest-major-changes summary in release notes (refs #68)
7c5f7d7 docs(release): rename major changes summary for release 01.07.00 (refs #68)
59ddc3e feat(release): add --allow-unclean flag for dry-run releases (refs #68)
6296877 feat(release): add --preserve-summary and --remove-summary flags to full-release.zsh (refs #68)
d3d4d9e docs(release): rename major changes summary for release 01.06.00 (refs #68)
7a26f83 docs(release): rename major changes summary for release 01.05.00 (refs #68)
819a840 docs(release): rename major changes summary for release 01.03.00 (refs #68)
81855f0 docs: add CONTRIBUTING.md and streamline developer onboarding (refs #68)
310f15f chore: add Brewfile and standardize dependency management (refs #68)
7e5bdb2 fix: resolve YAML linting issues and improve local validation (refs #68)
8118cf6 feat: create comprehensive Next Steps tracking document and update AI instructions (refs #68)
92d10f9 feat: add progress assessment and validation guidelines to AI instructions (refs #68)
aa4202b feat: add work planning guidelines to avoid time-based estimates (refs #68)
2e22b93 feat: add Local Linting and Format Validation design principle (refs #68)
aec5087 docs: add comprehensive YAML linting setup documentation (refs #68)
1869dd5 feat: add pre-commit hook for YAML linting and YAML formatting fixer script (refs #68)
be22f2c fix: update comprehensive tests workflow to use simplified validation scripts and fix YAML formatting (refs #68)
46636cf docs: add CI/CD success summary (refs #68)
7fc3fba fix: create output directories in CI/CD workflow (refs #68)
2ac678f simplify: use validation scripts in CI/CD instead of complex test runner (refs #68)
0150b63 fix: remove export -f from test-suites.zsh (refs #68)
e9eb628 fix: remove export -f commands causing CI/CD errors (refs #68)
af01ad0 fix: install zsh in CI/CD workflows (refs #68)
47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)

Issue #66: Repository Cleanup and Organization

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
a2beb5f chore: cleanup .keep file in HERO8 Black/HD8.01.02.50.00 (refs #66)
b250cde docs: add latest-major-changes-since-01.01.01.md for upcoming release (refs #66)
6299585 chore: remove obsolete firmware directories and files after restructuring (refs #66)
68cc6af fix: restore GoPro Max labs firmware to correct directory (refs #66)
18c64f6 refactor: merge firmware and firmware.labs into unified structure (refs #66)
ed9cda9 chore: remove obsolete GoPro documentation files (refs #66)
d02386f docs: add comprehensive README.md for docs directory with structure overview and navigation (refs #66)
4c36eab refactor: move GOPRO* documents to docs/gopro/ subfolder for better organization (refs #66)

Other Commits

32bda3f test: validate logger integration across all scripts
bab30c9 feat: integrate centralized logger into all scripts
a5b2cc8 feat: implement centralized logging module with CI/CD integration (draft baseline)
ed3adb5 feat: Add enhanced test coverage for GoProX functionality
653bc72 feat: Integrate comprehensive testing framework into CI/CD
b1d2842 docs: Update AI Instructions with comprehensive testing framework
410dd7f feat: Add comprehensive testing framework
970b3fa feat: add comprehensive testing framework requirement and commit hook validation
fefe3b5 feat(config): improve configuration file generation, quoting, and validation
da9b73d docs: establish and anchor Design Principles document, update AI Instructions
a356ea6 docs: add comprehensive Feature Planning documents and strategies for all open issues

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.09.00

26 Jun 20:46
Compare
Choose a tag to compare

GoProX v01.09.00

Changes since v01.01.01

New GoPro Models

  • HERO (2024) - New official firmware support added

Official Firmware

GoPro Max

  • H19.03.02.00.00
  • H19.03.02.02.00

HERO (2024)

  • H24.03.02.20.00

HERO10 Black

  • H21.01.01.30.00
  • H21.01.01.42.00
  • H21.01.01.46.00
  • H21.01.01.50.00
  • H21.01.01.62.00

HERO11 Black

  • H22.01.01.10.00
  • H22.01.01.12.00
  • H22.01.01.20.00
  • H22.01.02.01.00
  • H22.01.02.10.00
  • H22.01.02.32.00

HERO11 Black Mini

  • H22.03.02.00.00
  • H22.03.02.30.00
  • H22.03.02.50.00

HERO12 Black

  • H23.01.02.32.00

HERO13 Black

  • H24.01.02.02.00

HERO8 Black

  • HD8.01.02.50.00
  • HD8.01.02.51.00

HERO9 Black

  • HD9.01.01.60.00
  • HD9.01.01.72.00

The Remote

  • GP.REMOTE.FW.01.02.00
  • GP.REMOTE.FW.02.00.01

Labs Firmware

GoPro Max

  • H19.03.02.00.71
  • H19.03.02.00.75
  • H19.03.02.02.70

HERO10 Black

  • H21.01.01.46.70
  • H21.01.01.62.70

HERO11 Black

  • H22.01.01.20.70
  • H22.01.02.10.70
  • H22.01.02.32.70

HERO11 Black Mini

  • H22.03.02.30.70
  • H22.03.02.50.71b

HERO12 Black

  • H23.01.02.32.70

HERO13 Black

  • H24.01.02.02.70

HERO8 Black

  • HD8.01.02.51.75

HERO9 Black

  • HD9.01.01.72.70

Core Functionality

  • Centralized Logging System: Implemented comprehensive logging module with structured output, log levels, performance timing, and CI/CD integration
  • Enhanced Release Process: Added safety features including summary file preservation controls and uncommitted changes validation
  • Firmware Management: Improved firmware script integration with logging and error handling
  • Repository Organization: Restructured firmware tree and implemented .keep file validation

Infrastructure

  • CI/CD Integration: Enhanced testing framework with logger validation and comprehensive test coverage
  • Release Automation: Improved full-release script with configurable summary file handling and dry-run safety features
  • Documentation: Updated all documentation to reflect new logging capabilities and release process improvements

Issues Addressed

Issue #72: Release Management and Tracking

6f0a08e Bump version to v01.09.00 (refs #72)
529868c Bump version to v01.08.00 (refs #72)
b4ef28b Bump version to v01.07.00 (refs #72)
cbd87c0 Bump version to v01.06.00 (refs #72)
423e272 docs(release): restore latest-major-changes-since-01.01.01.md for full release (refs #72)
779346d docs(architecture): add configuration-driven release management principle (refs #72)
8a1d768 chore(config): move release-issue.yaml to config/ and update bump-version.zsh (refs #72)

Issue #71: Enhancement: Add Robust Logging to Automation and Release Scripts

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
4c3514d docs: update documentation with new logger capabilities (refs #71)
a4aaab7 docs(release): recreate latest-major-changes-since-01.01.01.md for full release (refs #71)
e14ac66 chore(logging): remove username from log prefix in full-release.zsh (refs #71)
72f9c7d feat(logging): add robust logging, verbosity flag, and error trapping to full-release.zsh (refs #71)
3412dcd Add test output management strategy to compensate for git exclusion (refs #71)
e4e2297 Add comprehensive test media files from multiple GoPro models (refs #71)

Issue #69: Enhancement: Enhanced SD Card Management

47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)
a38d3d3 docs: organize documentation into features/ and issues/ subfolders (refs #69)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

5da16ea docs(release): update latest major changes summary for release (refs #68)
1ace1c3 fix(release): auto-commit and push latest major changes summary before workflow (refs #68)
540c602 docs(release): rename major changes summary for release 01.08.00 (refs #68)
71388d5 fix(release-notes): always include latest-major-changes summary in release notes (refs #68)
7c5f7d7 docs(release): rename major changes summary for release 01.07.00 (refs #68)
59ddc3e feat(release): add --allow-unclean flag for dry-run releases (refs #68)
6296877 feat(release): add --preserve-summary and --remove-summary flags to full-release.zsh (refs #68)
d3d4d9e docs(release): rename major changes summary for release 01.06.00 (refs #68)
7a26f83 docs(release): rename major changes summary for release 01.05.00 (refs #68)
819a840 docs(release): rename major changes summary for release 01.03.00 (refs #68)
81855f0 docs: add CONTRIBUTING.md and streamline developer onboarding (refs #68)
310f15f chore: add Brewfile and standardize dependency management (refs #68)
7e5bdb2 fix: resolve YAML linting issues and improve local validation (refs #68)
8118cf6 feat: create comprehensive Next Steps tracking document and update AI instructions (refs #68)
92d10f9 feat: add progress assessment and validation guidelines to AI instructions (refs #68)
aa4202b feat: add work planning guidelines to avoid time-based estimates (refs #68)
2e22b93 feat: add Local Linting and Format Validation design principle (refs #68)
aec5087 docs: add comprehensive YAML linting setup documentation (refs #68)
1869dd5 feat: add pre-commit hook for YAML linting and YAML formatting fixer script (refs #68)
be22f2c fix: update comprehensive tests workflow to use simplified validation scripts and fix YAML formatting (refs #68)
46636cf docs: add CI/CD success summary (refs #68)
7fc3fba fix: create output directories in CI/CD workflow (refs #68)
2ac678f simplify: use validation scripts in CI/CD instead of complex test runner (refs #68)
0150b63 fix: remove export -f from test-suites.zsh (refs #68)
e9eb628 fix: remove export -f commands causing CI/CD errors (refs #68)
af01ad0 fix: install zsh in CI/CD workflows (refs #68)
47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)

Issue #66: Repository Cleanup and Organization

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
a2beb5f chore: cleanup .keep file in HERO8 Black/HD8.01.02.50.00 (refs #66)
b250cde docs: add latest-major-changes-since-01.01.01.md for upcoming release (refs #66)
6299585 chore: remove obsolete firmware directories and files after restructuring (refs #66)
68cc6af fix: restore GoPro Max labs firmware to correct directory (refs #66)
18c64f6 refactor: merge firmware and firmware.labs into unified structure (refs #66)
ed9cda9 chore: remove obsolete GoPro documentation files (refs #66)
d02386f docs: add comprehensive README.md for docs directory with structure overview and navigation (refs #66)
4c36eab refactor: move GOPRO* documents to docs/gopro/ subfolder for better organization (refs #66)

Other Commits

32bda3f test: validate logger integration across all scripts
bab30c9 feat: integrate centralized logger into all scripts
a5b2cc8 feat: implement centralized logging module with CI/CD integration (draft baseline)
ed3adb5 feat: Add enhanced test coverage for GoProX functionality
653bc72 feat: Integrate comprehensive testing framework into CI/CD
b1d2842 docs: Update AI Instructions with comprehensive testing framework
410dd7f feat: Add comprehensive testing framework
970b3fa feat: add comprehensive testing framework requirement and commit hook validation
fefe3b5 feat(config): improve configuration file generation, quoting, and validation
da9b73d docs: establish and anchor Design Principles document, update AI Instructions
a356ea6 docs: add comprehensive Feature Planning documents and strategies for all open issues

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.08.00

26 Jun 20:34
Compare
Choose a tag to compare

GoProX v01.08.00

Changes since v01.01.01

Issues Addressed

Issue #72: Release Management and Tracking

529868c Bump version to v01.08.00 (refs #72)
b4ef28b Bump version to v01.07.00 (refs #72)
cbd87c0 Bump version to v01.06.00 (refs #72)
423e272 docs(release): restore latest-major-changes-since-01.01.01.md for full release (refs #72)
779346d docs(architecture): add configuration-driven release management principle (refs #72)
8a1d768 chore(config): move release-issue.yaml to config/ and update bump-version.zsh (refs #72)

Issue #71: Enhancement: Add Robust Logging to Automation and Release Scripts

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
4c3514d docs: update documentation with new logger capabilities (refs #71)
a4aaab7 docs(release): recreate latest-major-changes-since-01.01.01.md for full release (refs #71)
e14ac66 chore(logging): remove username from log prefix in full-release.zsh (refs #71)
72f9c7d feat(logging): add robust logging, verbosity flag, and error trapping to full-release.zsh (refs #71)
3412dcd Add test output management strategy to compensate for git exclusion (refs #71)
e4e2297 Add comprehensive test media files from multiple GoPro models (refs #71)

Issue #69: Enhancement: Enhanced SD Card Management

47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)
a38d3d3 docs: organize documentation into features/ and issues/ subfolders (refs #69)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

71388d5 fix(release-notes): always include latest-major-changes summary in release notes (refs #68)
7c5f7d7 docs(release): rename major changes summary for release 01.07.00 (refs #68)
59ddc3e feat(release): add --allow-unclean flag for dry-run releases (refs #68)
6296877 feat(release): add --preserve-summary and --remove-summary flags to full-release.zsh (refs #68)
d3d4d9e docs(release): rename major changes summary for release 01.06.00 (refs #68)
7a26f83 docs(release): rename major changes summary for release 01.05.00 (refs #68)
819a840 docs(release): rename major changes summary for release 01.03.00 (refs #68)
81855f0 docs: add CONTRIBUTING.md and streamline developer onboarding (refs #68)
310f15f chore: add Brewfile and standardize dependency management (refs #68)
7e5bdb2 fix: resolve YAML linting issues and improve local validation (refs #68)
8118cf6 feat: create comprehensive Next Steps tracking document and update AI instructions (refs #68)
92d10f9 feat: add progress assessment and validation guidelines to AI instructions (refs #68)
aa4202b feat: add work planning guidelines to avoid time-based estimates (refs #68)
2e22b93 feat: add Local Linting and Format Validation design principle (refs #68)
aec5087 docs: add comprehensive YAML linting setup documentation (refs #68)
1869dd5 feat: add pre-commit hook for YAML linting and YAML formatting fixer script (refs #68)
be22f2c fix: update comprehensive tests workflow to use simplified validation scripts and fix YAML formatting (refs #68)
46636cf docs: add CI/CD success summary (refs #68)
7fc3fba fix: create output directories in CI/CD workflow (refs #68)
2ac678f simplify: use validation scripts in CI/CD instead of complex test runner (refs #68)
0150b63 fix: remove export -f from test-suites.zsh (refs #68)
e9eb628 fix: remove export -f commands causing CI/CD errors (refs #68)
af01ad0 fix: install zsh in CI/CD workflows (refs #68)
47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)

Issue #66: Repository Cleanup and Organization

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
a2beb5f chore: cleanup .keep file in HERO8 Black/HD8.01.02.50.00 (refs #66)
b250cde docs: add latest-major-changes-since-01.01.01.md for upcoming release (refs #66)
6299585 chore: remove obsolete firmware directories and files after restructuring (refs #66)
68cc6af fix: restore GoPro Max labs firmware to correct directory (refs #66)
18c64f6 refactor: merge firmware and firmware.labs into unified structure (refs #66)
ed9cda9 chore: remove obsolete GoPro documentation files (refs #66)
d02386f docs: add comprehensive README.md for docs directory with structure overview and navigation (refs #66)
4c36eab refactor: move GOPRO* documents to docs/gopro/ subfolder for better organization (refs #66)

Other Commits

32bda3f test: validate logger integration across all scripts
bab30c9 feat: integrate centralized logger into all scripts
a5b2cc8 feat: implement centralized logging module with CI/CD integration (draft baseline)
ed3adb5 feat: Add enhanced test coverage for GoProX functionality
653bc72 feat: Integrate comprehensive testing framework into CI/CD
b1d2842 docs: Update AI Instructions with comprehensive testing framework
410dd7f feat: Add comprehensive testing framework
970b3fa feat: add comprehensive testing framework requirement and commit hook validation
fefe3b5 feat(config): improve configuration file generation, quoting, and validation
da9b73d docs: establish and anchor Design Principles document, update AI Instructions
a356ea6 docs: add comprehensive Feature Planning documents and strategies for all open issues

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.07.00

26 Jun 20:13
Compare
Choose a tag to compare

GoProX v01.07.00

Changes since v01.01.01

Issues Addressed

Issue #72: Release Management and Tracking

b4ef28b Bump version to v01.07.00 (refs #72)
cbd87c0 Bump version to v01.06.00 (refs #72)
423e272 docs(release): restore latest-major-changes-since-01.01.01.md for full release (refs #72)
779346d docs(architecture): add configuration-driven release management principle (refs #72)
8a1d768 chore(config): move release-issue.yaml to config/ and update bump-version.zsh (refs #72)

Issue #71: Enhancement: Add Robust Logging to Automation and Release Scripts

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
4c3514d docs: update documentation with new logger capabilities (refs #71)
a4aaab7 docs(release): recreate latest-major-changes-since-01.01.01.md for full release (refs #71)
e14ac66 chore(logging): remove username from log prefix in full-release.zsh (refs #71)
72f9c7d feat(logging): add robust logging, verbosity flag, and error trapping to full-release.zsh (refs #71)
3412dcd Add test output management strategy to compensate for git exclusion (refs #71)
e4e2297 Add comprehensive test media files from multiple GoPro models (refs #71)

Issue #69: Enhancement: Enhanced SD Card Management

47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)
a38d3d3 docs: organize documentation into features/ and issues/ subfolders (refs #69)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

59ddc3e feat(release): add --allow-unclean flag for dry-run releases (refs #68)
6296877 feat(release): add --preserve-summary and --remove-summary flags to full-release.zsh (refs #68)
d3d4d9e docs(release): rename major changes summary for release 01.06.00 (refs #68)
7a26f83 docs(release): rename major changes summary for release 01.05.00 (refs #68)
819a840 docs(release): rename major changes summary for release 01.03.00 (refs #68)
81855f0 docs: add CONTRIBUTING.md and streamline developer onboarding (refs #68)
310f15f chore: add Brewfile and standardize dependency management (refs #68)
7e5bdb2 fix: resolve YAML linting issues and improve local validation (refs #68)
8118cf6 feat: create comprehensive Next Steps tracking document and update AI instructions (refs #68)
92d10f9 feat: add progress assessment and validation guidelines to AI instructions (refs #68)
aa4202b feat: add work planning guidelines to avoid time-based estimates (refs #68)
2e22b93 feat: add Local Linting and Format Validation design principle (refs #68)
aec5087 docs: add comprehensive YAML linting setup documentation (refs #68)
1869dd5 feat: add pre-commit hook for YAML linting and YAML formatting fixer script (refs #68)
be22f2c fix: update comprehensive tests workflow to use simplified validation scripts and fix YAML formatting (refs #68)
46636cf docs: add CI/CD success summary (refs #68)
7fc3fba fix: create output directories in CI/CD workflow (refs #68)
2ac678f simplify: use validation scripts in CI/CD instead of complex test runner (refs #68)
0150b63 fix: remove export -f from test-suites.zsh (refs #68)
e9eb628 fix: remove export -f commands causing CI/CD errors (refs #68)
af01ad0 fix: install zsh in CI/CD workflows (refs #68)
47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)

Issue #66: Repository Cleanup and Organization

7eefebb feat: add mandatory logger integration requirement and .keep file validation (refs #71, #66)
a2beb5f chore: cleanup .keep file in HERO8 Black/HD8.01.02.50.00 (refs #66)
b250cde docs: add latest-major-changes-since-01.01.01.md for upcoming release (refs #66)
6299585 chore: remove obsolete firmware directories and files after restructuring (refs #66)
68cc6af fix: restore GoPro Max labs firmware to correct directory (refs #66)
18c64f6 refactor: merge firmware and firmware.labs into unified structure (refs #66)
ed9cda9 chore: remove obsolete GoPro documentation files (refs #66)
d02386f docs: add comprehensive README.md for docs directory with structure overview and navigation (refs #66)
4c36eab refactor: move GOPRO* documents to docs/gopro/ subfolder for better organization (refs #66)

Other Commits

32bda3f test: validate logger integration across all scripts
bab30c9 feat: integrate centralized logger into all scripts
a5b2cc8 feat: implement centralized logging module with CI/CD integration (draft baseline)
ed3adb5 feat: Add enhanced test coverage for GoProX functionality
653bc72 feat: Integrate comprehensive testing framework into CI/CD
b1d2842 docs: Update AI Instructions with comprehensive testing framework
410dd7f feat: Add comprehensive testing framework
970b3fa feat: add comprehensive testing framework requirement and commit hook validation
fefe3b5 feat(config): improve configuration file generation, quoting, and validation
da9b73d docs: establish and anchor Design Principles document, update AI Instructions
a356ea6 docs: add comprehensive Feature Planning documents and strategies for all open issues

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.06.00

25 Jun 14:43
Compare
Choose a tag to compare

GoProX v01.06.00

Changes since v01.01.01

Issues Addressed

Issue #72: Release Management and Tracking

cbd87c0 Bump version to v01.06.00 (refs #72)
423e272 docs(release): restore latest-major-changes-since-01.01.01.md for full release (refs #72)
779346d docs(architecture): add configuration-driven release management principle (refs #72)
8a1d768 chore(config): move release-issue.yaml to config/ and update bump-version.zsh (refs #72)

Issue #71: Enhancement: Add Robust Logging to Automation and Release Scripts

a4aaab7 docs(release): recreate latest-major-changes-since-01.01.01.md for full release (refs #71)
e14ac66 chore(logging): remove username from log prefix in full-release.zsh (refs #71)
72f9c7d feat(logging): add robust logging, verbosity flag, and error trapping to full-release.zsh (refs #71)
3412dcd Add test output management strategy to compensate for git exclusion (refs #71)
e4e2297 Add comprehensive test media files from multiple GoPro models (refs #71)

Issue #69: Enhancement: Enhanced SD Card Management

47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)
a38d3d3 docs: organize documentation into features/ and issues/ subfolders (refs #69)

Issue #68: Enhancement: AI Instructions Tracking and Evolution

7a26f83 docs(release): rename major changes summary for release 01.05.00 (refs #68)
819a840 docs(release): rename major changes summary for release 01.03.00 (refs #68)
81855f0 docs: add CONTRIBUTING.md and streamline developer onboarding (refs #68)
310f15f chore: add Brewfile and standardize dependency management (refs #68)
7e5bdb2 fix: resolve YAML linting issues and improve local validation (refs #68)
8118cf6 feat: create comprehensive Next Steps tracking document and update AI instructions (refs #68)
92d10f9 feat: add progress assessment and validation guidelines to AI instructions (refs #68)
aa4202b feat: add work planning guidelines to avoid time-based estimates (refs #68)
2e22b93 feat: add Local Linting and Format Validation design principle (refs #68)
aec5087 docs: add comprehensive YAML linting setup documentation (refs #68)
1869dd5 feat: add pre-commit hook for YAML linting and YAML formatting fixer script (refs #68)
be22f2c fix: update comprehensive tests workflow to use simplified validation scripts and fix YAML formatting (refs #68)
46636cf docs: add CI/CD success summary (refs #68)
7fc3fba fix: create output directories in CI/CD workflow (refs #68)
2ac678f simplify: use validation scripts in CI/CD instead of complex test runner (refs #68)
0150b63 fix: remove export -f from test-suites.zsh (refs #68)
e9eb628 fix: remove export -f commands causing CI/CD errors (refs #68)
af01ad0 fix: install zsh in CI/CD workflows (refs #68)
47a6d51 feat: add comprehensive validation scripts and documentation (refs #68 #69)

Issue #66: Repository Cleanup and Organization

b250cde docs: add latest-major-changes-since-01.01.01.md for upcoming release (refs #66)
6299585 chore: remove obsolete firmware directories and files after restructuring (refs #66)
68cc6af fix: restore GoPro Max labs firmware to correct directory (refs #66)
18c64f6 refactor: merge firmware and firmware.labs into unified structure (refs #66)
ed9cda9 chore: remove obsolete GoPro documentation files (refs #66)
d02386f docs: add comprehensive README.md for docs directory with structure overview and navigation (refs #66)
4c36eab refactor: move GOPRO* documents to docs/gopro/ subfolder for better organization (refs #66)

Other Commits

ed3adb5 feat: Add enhanced test coverage for GoProX functionality
653bc72 feat: Integrate comprehensive testing framework into CI/CD
b1d2842 docs: Update AI Instructions with comprehensive testing framework
410dd7f feat: Add comprehensive testing framework
970b3fa feat: add comprehensive testing framework requirement and commit hook validation
fefe3b5 feat(config): improve configuration file generation, quoting, and validation
da9b73d docs: establish and anchor Design Principles document, update AI Instructions
a356ea6 docs: add comprehensive Feature Planning documents and strategies for all open issues

Installation

The recommended way to install or update GoProX is via Homebrew:

brew install fxstein/fxstein/goprox

Or, add the tap manually and then install:

brew tap fxstein/fxstein
brew install goprox

To upgrade to the latest version:

brew upgrade goprox

If you encounter issues, you can uninstall and reinstall:

brew uninstall goprox
brew install goprox

Note: Homebrew installs to /opt/homebrew/bin/goprox on Apple Silicon and /usr/local/bin/goprox on Intel Macs.

For configuration and advanced setup, see the project README or run:

goprox --setup

GoProX v01.01.01

24 Jun 01:11
Compare
Choose a tag to compare

GoProX v01.01.01

Changes since v00.52.00

Major Changes Since v00.52.00

New GoPro Models Supported

  • HERO (2024): Added full support for the new HERO (2024) camera model
  • HERO13 Black: Added support for HERO13 Black

Official Firmware Updates

  • HERO (2024): H24.03.02.20.00
  • HERO13 Black: H24.01.02.02.00
  • HERO12 Black: H23.01.02.32.00
  • HERO11 Black: H22.01.02.32.00, H22.01.02.10.00, H22.01.02.01.00, H22.01.01.20.00, H22.01.01.12.00, H22.01.01.10.00
  • HERO11 Black Mini: H22.03.02.50.00, H22.03.02.30.00, H22.03.02.00.00
  • HERO10 Black: H21.01.01.62.00, H21.01.01.50.00, H21.01.01.46.00, H21.01.01.42.00, H21.01.01.30.00
  • HERO9 Black: HD9.01.01.72.00, HD9.01.01.60.00
  • HERO8 Black: HD8.01.02.51.00, HD8.01.02.50.00
  • GoPro Max: H19.03.02.02.00, H19.03.02.00.00
  • The Remote: GP.REMOTE.FW.02.00.01, GP.REMOTE.FW.01.02.00

Labs Firmware Updates

  • HERO13 Black: H24.01.02.02.70
  • HERO12 Black: H23.01.02.32.70
  • HERO11 Black: H22.01.02.32.70, H22.01.02.10.70, H22.01.01.20.70
  • HERO11 Black Mini: H22.03.02.50.71b, H22.03.02.30.70
  • HERO10 Black: H21.01.01.62.70, H21.01.01.46.70
  • HERO9 Black: HD9.01.01.72.70
  • HERO8 Black: HD8.01.02.51.75
  • GoPro Max: H19.03.02.02.70, H19.03.02.00.75, H19.03.02.00.71

Core Functionality Improvements

  • Enhanced firmware discovery, validation, and download automation
  • Improved release automation and changelog generation with code block formatting
  • Robust argument parsing and error handling in all scripts
  • Major improvements to release documentation and process transparency
  • Strict enforcement of output file locations and naming conventions
  • Improved test coverage and validation for all supported models

Infrastructure & Process

  • Complete git history rewrite for repository clarity and maintainability
  • Improved GitHub Actions workflows for release, dry run, and Homebrew updates
  • Automated Homebrew formula updates with SHA256 verification
  • Enhanced AI instructions and project documentation for future maintainers
  • Comprehensive documentation of git history rewrite issues and solutions

Release Notes Format Improvements

  • Commit lines now displayed in markdown code blocks instead of bullet lists
  • Improved readability and consistency in release note formatting
  • Better visual separation between different commit sections

For a full list of issues and commits, see the release notes for the latest version.

Issues Addressed

Issue #68: Enhancement: AI Instructions Tracking and Evolution

e646268 docs(release): rename major changes summary for release 01.01.01 (refs #68)
cfd5710 feat(release): wrap commit lines in markdown code blocks instead of bullet lists (refs #68)
7194a2f docs: add project standard notice directing contributors to follow AI_INSTRUCTIONS.md (refs #68)
046dea3 docs(release): rename major changes summary for release 01.01.00 (refs #68)
e2dfc77 docs: add comprehensive guide for git history rewrite issues and solutions (refs #68)
03cd8c0 fix(workflow): add step to force rewritten git history in release automation (refs #68)
8e67427 docs(release): rename major changes summary for release 01.00.14 (refs #68)
a5d6bf6 docs(ai): add rule to always create latest major changes summary via AI, never by copying (refs #68)
c93bba1 docs(release): document strict parameter validation and update usage for full-release.zsh; feat(release): enforce strict argument parsing, add --base alias (refs #68)
4d90826 fix(release): improve commit range logic in generate-release-notes script (refs #68)
254f2da fix(workflow): ensure all jobs use complete git history after filter-repo rewrite (refs #68)
12eeba4 docs: move debug files to docs/ directory (refs #68)
42768fe fix(release): improve file rename logic to handle existing files properly (refs #68)
8a2f8aa docs(release): rename major changes summary for release 01.00.14 (refs #68)
37e0b74 fix(workflow): add GitHub CLI setup for issue title fetching in release notes (refs #68)
54cf6b2 docs(release): rename major changes summary for release 01.00.14 (refs #68)
fcdddb7 docs: add requirements for new GoPro models and firmware in major changes summary (refs #68)
7b115ca fix(release): improve error handling for summary file rename step (refs #68)
9d31201 fix(monitor): properly parse job status and add timestamps before icons (refs #68)
2575e1b docs(release): rename major changes summary for release 01.00.14 (refs #68)
1f27624 docs: add content priority requirement for major changes summaries (refs #68)
e9869af fix(monitor): display job status icons properly in formatted box (refs #68)
5813014 docs(release): rename major changes summary for release 01.00.14 (refs #68)
92b9d9d cleanup: remove incorrectly named major changes summary file (refs #68)
a35285a fix(release): allow GitHub Actions to output release notes to workspace root (refs #68)
1d597ba docs(release): rename major changes summary for release 01.00.14 (refs #68)
5101f33 enforce output directory requirement: add validation to release notes script; update AI instructions with critical output file requirements (refs #68)
d22cc93 release notes: fix issue title formatting and number parsing; remove quotes around issue numbers; handle API errors gracefully (refs #68)
553ef2b docs(release): rename major changes summary for release 01.00.14 (refs #68)
35be513 release: add mandatory checklist to AI instructions; create major changes summary since base version; enforce summary file requirement in full-release script (refs #68)
327e576 cleanup: remove GitHub backup tar.gz files from repo; add *.tar.gz to .gitignore (refs #68)
f8e5576 full-release: check for uncommitted changes in .github/workflows; require clean workflow state before release (refs #68)
541ec25 full-release: support --major, --minor, --patch options; pass bump type to bump-version script (refs #68)
9560cd2 bump-version: support --major, --minor, --patch (default minor); fix output so only version string is used for validation; info messages no longer pollute version string (refs #68)
1b9405b docs(release): rename major changes summary for release 01.00.14 (refs #68)
83763a4 docs(release): add latest major changes summary for dry run (refs #68)
2a05c48 docs: clarify summary file naming convention for release automation (refs #68)
3ab31f4 release: always rename and overwrite versioned summary file if latest exists (refs #68)
5f2d405 release(notes): insert versioned major changes summary and sort issues descending (refs #68)
2d680ea release: error and exit if uncommitted changes exist in scripts/release/ (refs #68)
88882b7 release: always parse intended new version and handle summary file for dry runs and real releases (refs #68)
e239d28 docs(release): update latest major changes summary before release test run (refs #68)
f8a237a docs: require AI to create or update latest-major-changes file before every release run (refs #68)
2d6e4d2 docs(release): add v01.00.14 major changes summary since v00.52.00 (refs #68)
5600d5e release: fix issue grouping and remove AI summary logic from release notes generation (refs #68)
785e39b release: fix issue grouping and remove AI summary logic from release notes generation (refs #68)
dc16109 release: update release scripts and remove AI summary script; prep for release with 00.52.00 baseline (refs #68)
aec9c55 docs: require commit/push of all scripts/release/ changes before release or dry run; enforce dry run before real release (refs #68)
aacec23 docs: add rule requiring commit and push before release dry runs (refs #68)
28f90ed release: restore clean baseline for release automation and notes (refs #68)
f62fb2e docs: update AI instructions to use full-release.zsh for all release operations (refs #68)
f08eb11 docs: update AI instructions for dry-run automation and issue list sync (refs #68)
6e1372b chore: add script to generate Markdown list of GitHub issues (refs #68)
0c6fedb docs: update AI instructions for project and issue awareness (refs #68)
cbea03a docs: update release workflow instructions to require --push for version bump (refs #68)
00cb8f8 docs: update AI instructions for issue creation automation (refs #68)

Issue #67: Enhanced default behavior: Automatic GoPro SD card detection and firmware management

da0a24d Add enhanced default behavior with automatic GoPro SD card detection and firmware management (refs #67 #63)

Issue #66: Repository Cleanup and Organization

ef8b82d docs: add official GoPro firmware URL format documentation (refs #60 #64 #66)
48e8795 Fix: update script header and usage for download-missing-firmware.zsh to match new naming and location (refs #66)

Issue #65: Enhancement/Workflow: Automate maintenance of latest firmware packages (official & labs)

e284997 Add initial firmware-tracker.md to wiki (#65)
21cda74 Add generate_firmware_wiki_table: Markdown firmware table generator for GoProX project (#65)

Issue #64: Enhancement: Exclude firmware zip files from release packages via .gitattributes

ef8b82d docs: add official GoPro firmware URL format documentation (refs #60 #64 #66)
ca124f3 Refactor .gitattributes to exclude all firmware zip files from package builds and track them with Git LFS. Introduce optimized-filter-repo.zsh script for enhanced git filter-repo operations with performance monitoring and user-friendly output. (refs #64)

Issue #63: Enhancement: Rename SD card volume label to HERO11-8909 format

da0a24d Add enhanced default behavior with automatic GoPro SD card detection and firmware management (refs #67 #63)
1d26874 Add GoPro SD card volume renaming script and detection documentation (refs #63)

Issue #62: Enhancement: Add firmware URL validation tool

b85463a fix: update HERO11 Black Labs H22.01.01.20.70 firmware URL to direct GitHub raw link (refs #60, #62)
1d574ad fix: treat HTTP 302 as valid for firmware URL validation (refs #62)
ac2faf9 chore: add MIT Lice...
Read more

GoProX v01.01.00

24 Jun 00:53
Compare
Choose a tag to compare

GoProX v01.01.00

Changes since v00.52.00

Major Changes Since v00.52.00

New GoPro Models Supported

  • HERO (2024): Added full support for the new HERO (2024) camera model
  • HERO13 Black: Added support for HERO13 Black

Official Firmware Updates

  • HERO (2024): H24.03.02.20.00
  • HERO13 Black: H24.01.02.02.00
  • HERO12 Black: H23.01.02.32.00
  • HERO11 Black: H22.01.02.32.00, H22.01.02.10.00, H22.01.02.01.00, H22.01.01.20.00, H22.01.01.12.00, H22.01.01.10.00
  • HERO11 Black Mini: H22.03.02.50.00, H22.03.02.30.00, H22.03.02.00.00
  • HERO10 Black: H21.01.01.62.00, H21.01.01.50.00, H21.01.01.46.00, H21.01.01.42.00, H21.01.01.30.00
  • HERO9 Black: HD9.01.01.72.00, HD9.01.01.60.00
  • HERO8 Black: HD8.01.02.51.00, HD8.01.02.50.00
  • GoPro Max: H19.03.02.02.00, H19.03.02.00.00
  • The Remote: GP.REMOTE.FW.02.00.01, GP.REMOTE.FW.01.02.00

Labs Firmware Updates

  • HERO13 Black: H24.01.02.02.70
  • HERO12 Black: H23.01.02.32.70
  • HERO11 Black: H22.01.02.32.70, H22.01.02.10.70, H22.01.01.20.70
  • HERO11 Black Mini: H22.03.02.50.71b, H22.03.02.30.70
  • HERO10 Black: H21.01.01.62.70, H21.01.01.46.70
  • HERO9 Black: HD9.01.01.72.70
  • HERO8 Black: HD8.01.02.51.75
  • GoPro Max: H19.03.02.02.70, H19.03.02.00.75, H19.03.02.00.71

Core Functionality Improvements

  • Enhanced firmware discovery, validation, and download automation
  • Improved release automation and changelog generation
  • Robust argument parsing and error handling in all scripts
  • Major improvements to release documentation and process transparency
  • Strict enforcement of output file locations and naming conventions
  • Improved test coverage and validation for all supported models

Infrastructure & Process

  • Complete git history rewrite for repository clarity and maintainability
  • Improved GitHub Actions workflows for release, dry run, and Homebrew updates
  • Automated Homebrew formula updates with SHA256 verification
  • Enhanced AI instructions and project documentation for future maintainers

For a full list of issues and commits, see the release notes for v01.00.14.

Issues Addressed

Issue #68: Enhancement: AI Instructions Tracking and Evolution

  • 046dea3 docs(release): rename major changes summary for release 01.01.00 (refs #68)
  • e2dfc77 docs: add comprehensive guide for git history rewrite issues and solutions (refs #68)
  • 03cd8c0 fix(workflow): add step to force rewritten git history in release automation (refs #68)
  • 8e67427 docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • a5d6bf6 docs(ai): add rule to always create latest major changes summary via AI, never by copying (refs #68)
  • c93bba1 docs(release): document strict parameter validation and update usage for full-release.zsh; feat(release): enforce strict argument parsing, add --base alias (refs #68)
  • 4d90826 fix(release): improve commit range logic in generate-release-notes script (refs #68)
  • 254f2da fix(workflow): ensure all jobs use complete git history after filter-repo rewrite (refs #68)
  • 12eeba4 docs: move debug files to docs/ directory (refs #68)
  • 42768fe fix(release): improve file rename logic to handle existing files properly (refs #68)
  • 8a2f8aa docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 37e0b74 fix(workflow): add GitHub CLI setup for issue title fetching in release notes (refs #68)
  • 54cf6b2 docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • fcdddb7 docs: add requirements for new GoPro models and firmware in major changes summary (refs #68)
  • 7b115ca fix(release): improve error handling for summary file rename step (refs #68)
  • 9d31201 fix(monitor): properly parse job status and add timestamps before icons (refs #68)
  • 2575e1b docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 1f27624 docs: add content priority requirement for major changes summaries (refs #68)
  • e9869af fix(monitor): display job status icons properly in formatted box (refs #68)
  • 5813014 docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 92b9d9d cleanup: remove incorrectly named major changes summary file (refs #68)
  • a35285a fix(release): allow GitHub Actions to output release notes to workspace root (refs #68)
  • 1d597ba docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 5101f33 enforce output directory requirement: add validation to release notes script; update AI instructions with critical output file requirements (refs #68)
  • d22cc93 release notes: fix issue title formatting and number parsing; remove quotes around issue numbers; handle API errors gracefully (refs #68)
  • 553ef2b docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 35be513 release: add mandatory checklist to AI instructions; create major changes summary since base version; enforce summary file requirement in full-release script (refs #68)
  • 327e576 cleanup: remove GitHub backup tar.gz files from repo; add *.tar.gz to .gitignore (refs #68)
  • f8e5576 full-release: check for uncommitted changes in .github/workflows; require clean workflow state before release (refs #68)
  • 541ec25 full-release: support --major, --minor, --patch options; pass bump type to bump-version script (refs #68)
  • 9560cd2 bump-version: support --major, --minor, --patch (default minor); fix output so only version string is used for validation; info messages no longer pollute version string (refs #68)
  • 1b9405b docs(release): rename major changes summary for release 01.00.14 (refs #68)
  • 83763a4 docs(release): add latest major changes summary for dry run (refs #68)
  • 2a05c48 docs: clarify summary file naming convention for release automation (refs #68)
  • 3ab31f4 release: always rename and overwrite versioned summary file if latest exists (refs #68)
  • 5f2d405 release(notes): insert versioned major changes summary and sort issues descending (refs #68)
  • 2d680ea release: error and exit if uncommitted changes exist in scripts/release/ (refs #68)
  • 88882b7 release: always parse intended new version and handle summary file for dry runs and real releases (refs #68)
  • e239d28 docs(release): update latest major changes summary before release test run (refs #68)
  • f8a237a docs: require AI to create or update latest-major-changes file before every release run (refs #68)
  • 2d6e4d2 docs(release): add v01.00.14 major changes summary since v00.52.00 (refs #68)
  • 5600d5e release: fix issue grouping and remove AI summary logic from release notes generation (refs #68)
  • 785e39b release: fix issue grouping and remove AI summary logic from release notes generation (refs #68)
  • dc16109 release: update release scripts and remove AI summary script; prep for release with 00.52.00 baseline (refs #68)
  • aec9c55 docs: require commit/push of all scripts/release/ changes before release or dry run; enforce dry run before real release (refs #68)
  • aacec23 docs: add rule requiring commit and push before release dry runs (refs #68)
  • 28f90ed release: restore clean baseline for release automation and notes (refs #68)
  • f62fb2e docs: update AI instructions to use full-release.zsh for all release operations (refs #68)
  • f08eb11 docs: update AI instructions for dry-run automation and issue list sync (refs #68)
  • 6e1372b chore: add script to generate Markdown list of GitHub issues (refs #68)
  • 0c6fedb docs: update AI instructions for project and issue awareness (refs #68)
  • cbea03a docs: update release workflow instructions to require --push for version bump (refs #68)
  • 00cb8f8 docs: update AI instructions for issue creation automation (refs #68)

Issue #67: Enhanced default behavior: Automatic GoPro SD card detection and firmware management

  • da0a24d Add enhanced default behavior with automatic GoPro SD card detection and firmware management (refs #67 #63)

Issue #66: Repository Cleanup and Organization

  • ef8b82d docs: add official GoPro firmware URL format documentation (refs #60 #64 #66)
  • 48e8795 Fix: update script header and usage for download-missing-firmware.zsh to match new naming and location (refs #66)

Issue #65: Enhancement/Workflow: Automate maintenance of latest firmware packages (official & labs)

  • e284997 Add initial firmware-tracker.md to wiki (#65)
  • 21cda74 Add generate_firmware_wiki_table: Markdown firmware table generator for GoProX project (#65)

Issue #64: Enhancement: Exclude firmware zip files from release packages via .gitattributes

  • ef8b82d docs: add official GoPro firmware URL format documentation (refs #60 #64 #66)
  • ca124f3 Refactor .gitattributes to exclude all firmware zip files from package builds and track them with Git LFS. Introduce optimized-filter-repo.zsh script for enhanced git filter-repo operations with performance monitoring and user-friendly output. (refs #64)

Issue #63: Enhancement: Rename SD card volume label to HERO11-8909 format

  • da0a24d Add enhanced default behavior with automatic GoPro SD card detection and firmware management (refs #67 #63)
  • 1d26874 Add GoPro SD card volume renaming script and detection documentation (refs #63)

Issue #62: Enhancement: Add firmware URL validation tool

  • b85463a fix: update HERO11 Black Labs H22.01.01.20.70 firmware URL to direct GitHub raw link (refs #60, #62)
  • 1d574ad fix: treat HTTP 302 as valid for firmware URL validation (refs #62)
  • ac2faf9 chore: add MIT License header to validate_firmware_urls (closes #62)
  • 7af0d5d feat: add validate_firmware_urls script for automated firmware URL checking (refs #62)

Issue #60: Feature: Redesign firmware processing to use URL-based fetch and local cache

  • ef8b82d docs: add official GoPro firmware URL format documentation (refs #60 #64 #66)
  • a76e115 Add new scripts for managing firmware: add_firmware_url.zsh for adding firmware URLs and download_missing_firmware.zsh for downloading missing firmware files. Also, include new firmware files for The Remote with associated m...
Read more