-
Notifications
You must be signed in to change notification settings - Fork 25
Devops #288
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Devops #288
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Fix spacing and formatting in BUILD.md files (EN, ES, PT-BR) - Improve CLAUDE.md documentation structure and readability - Apply consistent markdown style across all documentation files 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Remove TODO.md file as all tasks have been migrated to GitHub project - Add roadmap sections to all README files linking to project tracker - Provide users visibility into planned features and development status 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Create CONTRIBUTING.md with development setup instructions - Include code style, testing, and PR process guidelines - Add translation workflow and documentation standards - Provide multiple contribution pathways for diverse community - Link to GitHub project roadmap and Weblate platform 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Update GitHub Actions workflows to use valid PEP 440 syntax - Fix BUILD documentation files for consistency - Enable automatic updates to aqtinstall 3.3+ versions - Follow proper pip version specification standards 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Add DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON to all platform builds - Enable LTO for main application builds (Ubuntu, Windows, macOS) - Enable LTO for Sentry SDK compilation across platforms - Improve release binary performance and reduce size 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Replace `<QtWidgets/QtWidgets>` with specific Qt includes in 5 UI headers: - mainwindow_ui.h: 17 specific includes instead of 200+ classes - elementeditor_ui.h: 11 specific includes - lengthdialog_ui.h: 6 specific includes - clockdialog_ui.h: 6 specific includes - bewaveddolphin_ui.h: 8 specific includes Also add missing QApplication include to bewaveddolphin.cpp. Performance Impact: - Build time: 342.30s → 92.98s (72.8% improvement) - Compilation units: 194 → 108 - Eliminates ~200 unnecessary Qt class definitions per include Analysis tools: include-what-you-use, clang-build-analyzer Based on comprehensive build performance analysis identifying monolithic includes as primary compilation bottleneck. 🤖 Generated with [Claude Code](https://claude.ai/code) perf: optimize header dependencies for additional 16.9% build improvement Header-specific optimizations: - Move QPixmapCache include from graphicelement.h to mainwindow.cpp (reduces include overhead for 42 files including graphicelement.h) - Remove unused QObject include from common.h (reduces include overhead for 21 files including common.h) Performance Impact: - Additional improvement: 92.98s → 77.26s (16.9% faster) - Total cumulative improvement: 342.30s → 77.26s (77.4% faster) Analysis: Follow-up IWYU optimization targeting high-frequency headers identified through systematic include dependency analysis. 🤖 Generated with [Claude Code](https://claude.ai/code) Update scene.h Update graphicelement.h Co-Authored-By: Claude <[email protected]>
- Add comprehensive PCH including Qt headers, STL containers, and expensive project headers - Replace ccache-based PCH logic with ENABLE_PCH option (default ON) - Include most expensive headers based on ClangBuildAnalyzer data: * app/graphicelement.h (was 288.4s total) * app/enums.h (was 264.7s total) * app/logicelement.h (was 123.0s total) - Add forward declarations to reduce header dependencies - PCH compilation cost: 5.48s, total savings: 643.8s (11,700% ROI) Performance improvements: - Frontend parsing: 805.4s → 161.6s (80% faster) - Total build time: 889.1s → 249.0s (72% faster) - Expensive headers no longer appear in top performance bottlenecks 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
- Add CMakePresets.json with 12 configure presets covering all use cases: * Basic builds: debug, release, relwithdebinfo * Development: coverage, asan, tsan, msan, ubsan * Platform-specific: windows-qt, macos-universal * Deployment: sentry-crashpad, sentry-breakpad - Add corresponding build and test presets for consistent workflow - Migrate all CMake commands across entire repository to use presets: * Documentation: README (3 languages), BUILD (3 languages), CONTRIBUTING * Scripts: coverage.sh, devcontainer setup * CI/CD: All GitHub workflows (build, coverage, codeql, deploy) * Project docs: CLAUDE.md Benefits: - Users no longer need to remember build directory or complex flags - Consistent Ninja generator and build settings across all platforms - Platform-specific presets auto-activate based on OS - Simplified commands: cmake --preset release && cmake --build --preset release - Better IDE integration with preset discovery 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
…egration - Implement multi-stage Docker build separating Qt installation from runtime - Add UTF-8 locale configuration to prevent Qt encoding warnings - Remove LLVM/Clang toolchain, keep GCC (wiRedPanda uses GCC via CMake) - Add essential tools: GitHub CLI, Node.js 20.x, lcov coverage, mold linker - Configure zsh with Oh My Zsh for developer user with sudo access - Remove QML components and debug files to reduce image size - Clean environment variable definitions to eliminate Docker warnings - Update devcontainer.json to use pre-built Docker Hub image - Remove features section to prevent VS Code from rebuilding layers - Reduce image size from 6+ GB to ~4 GB while maintaining full functionality The devcontainer now pulls darktorres/wiredpanda-devcontainer:ubuntu22.04 from Docker Hub, enabling instant setup for all contributors. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Update README.md, README_pt_BR.md, and README_es.md to include complete build requirements instead of listing only Ninja. Added CMake 3.16+, Qt 5.15+/6.2+ with modules, and C++20 compiler requirements for clarity. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.