CCGO Roadmap¶
Version: v3.0.13 | Updated: 2026-01-23
Project Status Overview¶
| Module | Progress | Status |
|---|---|---|
| Python CLI | 100% | Feature complete, maintenance mode |
| Rust CLI | 100% | Feature complete, zero Python dependencies â |
| Cross-Platform Builds | 100% | 8 platforms supported |
| Docker Builds | 100% | Universal cross-compilation |
| Dependency Management | 100% | Git, path, patches, lockfile, transitive resolution â |
| Publishing System | 100% | Maven, CocoaPods, SPM, OHPM, Conan |
| Template System | 100% | Copier-based project generation |
| CMake Integration | 100% | Centralized build scripts |
| Gradle Plugins | 100% | Android/KMP convention plugins |
| Documentation | 100% | MkDocs with i18n (this document!) |
Supported Platforms: Android, iOS, macOS, Windows, Linux, OpenHarmony, watchOS, tvOS, Kotlin Multiplatform
Priority Definitions¶
- P0 (Critical): Blocking core functionality or release
- P1 (High): Important features or major improvements
- P2 (Medium): Enhancements, valuable but not urgent
- P3 (Low): Long-term planning, nice-to-have
P0 - Critical (Current Release v3.1) đĨ¶
1. Rust CLI Feature Parity¶
Status: 100% Complete â | Target: v3.1.0 (Q1 2026)
- Core build commands (build, test, bench, doc) â
- Dependency management (install with lockfile) â
- Project creation (new, init) â
- Version management (tag, package) â
- Vendor command implementation â
- Update command for dependency updates â
- Run command for examples/binaries â
- CI command orchestration (via command composition) â
- Complete migration from Python to Rust â
- Zero Python dependencies (direct Copier invocation) â
Rationale: Rust provides better performance, type safety, and easier distribution (single binary).
2. Documentation Completion¶
Status: 100% Complete | Target: v3.1.0 (Q1 2026) â
- MkDocs setup with i18n â
- Home page and getting started â
- Complete platform guides (Android, iOS, macOS, Linux, Windows, OpenHarmony, KMP) â
- CLI reference documentation â
- CCGO.toml configuration reference â
- CMake integration guide â
- Gradle plugins reference â
- Migration guides (from Conan, Python to Rust) â
Rationale: Good documentation is critical for user adoption and reducing support burden.
3. Error Handling Enhancement¶
Status: 100% Complete | Target: v3.1.0 (Q1 2026) â
- Unified error types in Rust CLI â
- Custom error types with contextual hints â
- User-friendly error messages with actionable hints â
- Graceful degradation when tools missing â
- Comprehensive configuration validation â
- Tool detection module with requirement levels â
- Integration into build/publish commands â
- Build failure diagnostics with common solutions â
P1 - High (v3.2-v3.3) đ¶
4. Package Registry Support¶
Status: 100% Complete â | Target: v3.2.0 (Q2 2026)
Phase 1 - Git-based Enhancement (v3.1.1) â
- [x] Git URL shorthand syntax (github:user/repo, gh:, gl:, bb:) â
- [x] Automatic version discovery from Git tags (--latest flag) â
- [x] Bare owner/repo syntax (assumes GitHub) â
- [x] Pre-release version support (--prerelease flag) â
Phase 2 - Lightweight Index (v3.2.0) â
- [x] Index repository format design â
- [x] Index parsing and caching â
- [x] Simplified version syntax (fmt = "^10.1") â
- [x] Private index support ([registries] section) â
- [x] Package search via index (ccgo search, ccgo registry search) â
- [x] Registry management commands (ccgo registry add/list/remove/update/info) â
Phase 3 - Publishing Tools (v3.2.1) â
- [x] ccgo publish index command â
- [x] Auto-generate package metadata JSON from CCGO.toml â
- [x] Version discovery from Git tags â
- [x] SHA-256 checksum generation via --checksum flag â
Design Decision: Following SPM's Git-based approach instead of central registry server. - No server maintenance required - Leverages existing Git infrastructure - Natural support for private packages - Index repository is just a Git repo (like crates.io-index)
Rationale: Enable easier dependency sharing within organizations and community.
5. IDE Integration¶
Status: 100% Complete â | Target: v3.2.0 (Q2 2026)
- VS Code extension (
vscode-ccgo/) â - Syntax highlighting for CCGO.toml (TextMate grammar)
- JSON Schema validation with error hints
- Build tasks integration (all platforms, debug/release)
- Dependency tree visualization (via
ccgo tree --format json) - Code snippets for common patterns
- CLion/Android Studio plugin (
jetbrains-ccgo/) â - CCGO.toml syntax highlighting (TOML plugin integration)
- JSON Schema validation with real-time error hints
- Run configurations for all platforms and commands
- Dependency tree tool window
- Live templates for common patterns
- Settings UI for plugin configuration
- Neovim plugin (
nvim-ccgo/) â - Taplo LSP integration with CCGO schema
- Build commands with Telescope integration
- Dependency tree viewer sidebar
- LuaSnip snippets (14+ templates)
- Platform/architecture pickers
- Xcode project generation (
ccgo build ios/macos --ide-project) â - Visual Studio project generation (
ccgo build windows --ide-project) â - Linux IDE project generation (
ccgo build linux --ide-project) â - CodeLite workspace + compile_commands.json for VS Code/clangd
Rationale: Better IDE support improves developer experience.
6. Build Performance Optimization¶
Status: 67% Complete | Target: v3.3.0 (Q2 2026)
- Parallel platform builds â
- Docker layer caching â
- Incremental builds (only rebuild changed sources)
- Build cache sharing (ccache, sccache integration) â
- Remote build execution (distcc, icecc)
- Build analytics and profiling â
Rationale: Faster builds = happier developers.
7. Advanced Dependency Features¶
Status: 100% Complete â | Target: v3.3.0 (Q2 2026)
- Git dependencies with revision pinning â
- Path dependencies â
- Lockfile generation â
- Dependency override/patches â
- Dependency vendoring improvements â
- SHA-256 checksum verification for vendored archives
- Build artifact exclusion rules (target/, cmake_build/, etc.)
- Transitive dependency resolution â (docs)
- Version conflict resolution strategies â
- First (default), Highest, Lowest, Strict modes
--conflict-strategyCLI option in install command- Workspace dependencies (monorepo support) â
--workspaceflag for build/install commands--package <name>for targeting specific members
P2 - Medium (v3.4-v4.0) đ϶
8. Testing Framework Enhancement¶
Status: 100% Complete â | Target: v3.4.0 (Q3 2026)
- Google Test integration â
- Catch2 integration â
- Test discovery improvements â
- GoogleTest, Catch2, and CTest discovery
- Test filtering by name pattern
- Suite-based organization
- Code coverage reporting â
- gcov, llvm-cov, lcov support
- HTML, LCOV, JSON, Cobertura output formats
- Threshold enforcement with --fail-under-coverage
- Test result aggregation â
- XML result parsing (GoogleTest format)
- Cross-suite aggregation
- JUnit XML export
- Benchmark result comparison â
- Google Benchmark JSON parsing
- Baseline comparison with regression detection
- Markdown/JSON export for reports
- Integration with CI services â
- GitHub Actions, GitLab CI, Azure DevOps, Jenkins, TeamCity
- Auto-detection of CI environment
- Native CI annotation formats
9. Code Generation Tools¶
Status: 0% Complete | Target: v3.5.0 (Q3 2026)
- Protocol Buffers support
- Flat Buffers support
- gRPC support
- GraphQL code generation
- OpenAPI client generation
- Custom code gen plugin system
10. Platform-Specific Features¶
Status: Various | Target: v3.6.0 (Q4 2026)
- Android
- Jetpack Compose native interop
- Android Studio plugin
- R8/ProGuard configuration
- iOS/macOS
- SwiftUI interop helpers
- Xcode Cloud integration
- App Clip support
- OpenHarmony
- DevEco Studio integration
- ArkTS interop
- Windows
- UWP support
- WinUI 3 integration
11. Security Features¶
Status: 20% Complete | Target: v3.7.0 (Q4 2026)
- Basic checksum verification â
- GPG signature verification for dependencies
- Security audit reports
- CVE scanning for dependencies
- Supply chain security (SLSA compliance)
- Code signing automation
P3 - Low (v4.0+) đ޶
12. WebAssembly Support¶
Status: 0% Complete | Target: v4.0.0 (2027)
- WASM target compilation
- Emscripten integration
- WASI support
- WebAssembly System Interface (WASI)
13. AI-Powered Features¶
Status: 0% Complete | Target: v4.1.0 (2027)
- Dependency suggestion based on project analysis
- Build configuration optimization recommendations
- Automatic migration from other build systems
- Code generation from natural language
14. Cloud Build Service¶
Status: 0% Complete | Target: v4.2.0 (2027)
- Hosted build service (ccgo-cloud)
- Distributed caching
- Build analytics dashboard
- Team collaboration features
15. Advanced Platform Support¶
Status: 0% Complete | Target: v4.x (2027+)
- FreeBSD support
- Haiku OS support
- RISC-V architecture support
- LoongArch architecture support
- PlayStation/Xbox platforms (if licensing permits)
Recently Completed (v3.0) â ¶
IDE Integration (v3.0.12)¶
- VS Code extension (
vscode-ccgo/) - TextMate grammar for CCGO.toml syntax highlighting
- JSON Schema validation with real-time error hints
- Build task provider for all platforms (debug/release)
- Dependency tree view using
ccgo tree --format json - Code snippets for package, build, dependencies, platforms, publish sections
- Platform IDE project generation (
--ide-projectflag) - iOS/macOS: Xcode project generation (CMake -G "Xcode")
- Windows: Visual Studio 2022 project (CMake -G "Visual Studio 17 2022")
- Windows (MinGW): CodeLite project (CMake -G "CodeLite - MinGW Makefiles")
- Linux: CodeLite workspace + compile_commands.json for clangd/VS Code
Build Performance Optimization (v3.0.12)¶
- Build cache sharing (ccache, sccache integration)
- Automatic detection of ccache/sccache in PATH
- Preference order: sccache > ccache (sccache is faster, more features)
- CMAKE_C_COMPILER_LAUNCHER and CMAKE_CXX_COMPILER_LAUNCHER configuration
--cacheCLI option: auto (default), ccache, sccache, none- Integrated into all platform builders
- Build analytics and profiling
- Build timing per phase (configure, compile, link, package)
- Cache hit/miss statistics from ccache/sccache
- File count and artifact size tracking
- Historical data storage at ~/.ccgo/analytics/
--analyticsflag to display build metricsccgo analyticscommand for viewing build history- Comparison with historical averages
Testing Framework Enhancement (v3.0.12)¶
- Test discovery improvements
- GoogleTest (
--gtest_list_tests), Catch2 (--list-tests), CTest (ctest -N) - Test filtering by name pattern with regex support
- Suite-based organization and listing
- Code coverage reporting
- Support for gcov, llvm-cov, lcov tools
- Output formats: HTML, LCOV, JSON, Cobertura, Summary
- Threshold enforcement with
--fail-under-coverageflag - Test result aggregation
- GoogleTest XML result parsing
- Cross-suite aggregation with pass/fail/skip counts
- JUnit XML export for CI integration
- Benchmark result comparison
- Google Benchmark JSON parsing
- Baseline comparison with configurable threshold
- Regression detection with
--fail-on-regression - Markdown/JSON export for reports
- CI service integration
- GitHub Actions (workflow annotations)
- GitLab CI (collapsible sections)
- Azure DevOps (task commands)
- Jenkins (console formatting)
- TeamCity (service messages)
- Auto-detection via environment variables
Advanced Dependency Features (v3.0.12)¶
- Dependency vendoring improvements
- SHA-256 checksum verification for vendored archives
- Build artifact exclusion rules (target/, cmake_build/, bin/, etc.)
- Improved archive creation with proper directory handling
- Version conflict resolution strategies
- Four strategies: First (default), Highest, Lowest, Strict
--conflict-strategyCLI option for install command- Integrated into VersionResolver with strategy-aware resolution
- Workspace dependencies (monorepo support)
--workspaceflag for building/installing all workspace members--package <name>for targeting specific workspace members- Topological order resolution for inter-member dependencies
Transitive Dependency Resolution (v3.0.11)¶
- Dependency graph with cycle detection (DFS algorithm)
- Topological sorting for correct build order (Kahn's algorithm)
- Dependency tree visualization with shared dependency detection
- Version conflict warnings
- Recursive CCGO.toml resolution with path handling
- Max depth protection (50 levels)
- Integration with
ccgo installcommand - Comprehensive test suite (10 tests: 7 resolver + 3 graph)
- Full documentation (docs/dependency-resolution.md)
Rust CLI Migration (Partial)¶
- Project architecture redesign
- Core commands implementation
- Dependency management system
- Build orchestration
- Configuration parsing (CCGO.toml)
Docker Build System¶
- Docker-based universal cross-compilation
- Pre-built Docker images for all platforms
- Image caching and optimization
- Multi-stage build support
Unified Publishing¶
- Maven (local, private, central) publishing
- CocoaPods publishing
- Swift Package Manager publishing
- OHPM publishing
- Conan publishing
Git Integration¶
- Automatic version tagging
- Commit message generation
- Git hooks (pre-commit) support
- Git-based dependencies
How to Contribute¶
We welcome contributions! Here's how you can help:
- Pick a Feature: Choose an item from P1 or P2 priorities
- Discuss: Open a GitHub Discussion or Issue to discuss your approach
- Implement: Follow our Contributing Guide
- Test: Ensure your changes work across platforms
- Document: Update docs with new features
- Submit: Create a pull request
See Contributing Guide for detailed guidelines.
Feedback¶
Have ideas for CCGO's future? We'd love to hear from you!
- GitHub Discussions - Feature requests and ideas
- GitHub Issues - Bug reports and tasks
- Email: zhlinhng@gmail.com
This roadmap is a living document and may change based on community feedback and project priorities.