Commit Graph

3164 Commits

Author SHA1 Message Date
scawful
d45f7819e1 refactor(app): reorganize application structure and update includes
- Moved core components such as `Controller` and `Window` from `src/app/core/` to `src/app/` and `src/app/platform/`, respectively, to improve modularity and clarity.
- Updated include paths across the codebase to reflect the new locations of these components.
- Introduced a new foundational core library in `src/core/` for project management and ROM patching logic, enhancing the separation of concerns.
- Adjusted CMake configurations to ensure proper compilation of the new core library and updated dependencies in various modules.

Benefits:
- Streamlines the application structure, making it easier to navigate and maintain.
- Enhances code organization by clearly delineating core functionalities from application-specific logic.
- Improves overall architecture by promoting a clearer separation of concerns between different components.
2025-10-15 20:10:04 -04:00
scawful
066ffa46e2 remove ninja for windows ci/release 2025-10-15 19:01:18 -04:00
scawful
36933f1fed refactor(ci): simplify release workflow and enhance build process
- Updated the release workflow in `release.yml` to streamline the CI process by consolidating build steps for Windows, macOS, and Linux.
- Removed redundant validation and preparation steps, improving efficiency and clarity in the workflow.
- Enhanced the packaging process for macOS to create a universal binary and added support for Linux artifact generation.
- Improved dependency installation steps across platforms, ensuring a more consistent build environment.

Benefits:
- Reduces complexity in the CI configuration, making it easier to maintain and understand.
- Increases reliability of the build process, minimizing potential issues during execution.
- Facilitates smoother artifact creation and release management across different operating systems.
2025-10-15 18:53:08 -04:00
scawful
ff69bf0393 chore(vcpkg): update baseline and commit ID for vcpkg integration
- Updated the vcpkg baseline in `vcpkg-configuration.json` and `vcpkg.json` to the latest commit `8eb57355a4ffb410a2e94c07b4dca2dffbee8e50`, ensuring compatibility with the latest package versions.
- Modified CI workflows in `ci.yml` and `release.yml` to reflect the new vcpkg commit ID, improving consistency across build configurations.

Benefits:
- Ensures the project is using the most recent vcpkg features and fixes, enhancing overall stability and performance.
- Maintains alignment between the vcpkg configuration and CI workflows, reducing potential discrepancies during builds.
2025-10-15 18:49:45 -04:00
scawful
6f02852d3f feat(editor): integrate session management into EditorManager
- Added a new `session_types` module to encapsulate session-related structures and logic, including `EditorSet` and `RomSession`.
- Refactored `EditorManager` to utilize `SessionCoordinator` for session management, enhancing modularity and clarity.
- Updated various methods to replace direct references to current ROM and editor sets with calls to `SessionCoordinator`, improving session handling.
- Removed redundant session management logic from `EditorManager`, delegating responsibilities to `SessionCoordinator`.

Benefits:
- Streamlines session management, making it easier to handle multiple sessions and their associated editors.
- Enhances code maintainability by centralizing session-related logic and reducing coupling within the `EditorManager`.
- Improves overall architecture by promoting a clearer separation of concerns between session management and editor functionality.
2025-10-15 18:44:27 -04:00
scawful
60f0925984 refactor(ci): streamline Windows CI workflows and improve toolchain setup
- Consolidated and simplified the Windows CI workflows by removing redundant steps related to vcpkg setup and MSVC environment initialization.
- Enhanced the toolchain resolution process to ensure the vcpkg root and toolchain file are correctly identified and set in the environment.
- Updated the installation of Windows build tools to utilize Chocolatey for a more efficient setup.
- Improved logging and error handling for better visibility during the CI process.

Benefits:
- Reduces complexity in the CI configuration, making it easier to maintain and understand.
- Increases reliability of the build environment setup, minimizing potential issues during the CI execution.
2025-10-15 18:30:05 -04:00
scawful
0d412d059d feat(ci): enhance download process in release workflow with multiple URLs
- Updated the release workflow to support multiple download URLs for packages, improving reliability in fetching dependencies.
- Implemented a fallback mechanism to attempt downloads from alternative sources if the primary URL fails, enhancing robustness.
- Added logic to check for the presence of `pkg-config.exe` in multiple candidate directories, ensuring better integration with system binaries.

Benefits:
- Increases the likelihood of successful downloads, reducing build failures due to unavailable resources.
- Streamlines the CI process by ensuring necessary tools are available, improving overall build environment setup.
2025-10-15 17:33:23 -04:00
scawful
8978eb09a4 feat(ci): enhance release workflow with pkg-config path setup and system binaries
- Added a step to the Windows release workflow to include pkg-config in the PATH if it exists, improving build environment setup.
- Introduced the VCPKG_FORCE_SYSTEM_BINARIES environment variable to ensure system binaries are prioritized during builds.

Benefits:
- Streamlines the CI process by ensuring necessary tools are available, reducing potential build issues related to missing dependencies.
- Enhances compatibility with system-installed libraries, facilitating smoother integration and build performance.
2025-10-15 17:25:45 -04:00
scawful
fd91d17ebd refactor(core): move AsarWrapper to core directory and update includes
- Relocated AsarWrapper implementation and header files from `src/app/core/` to `src/core/` to enhance modularity and organization.
- Updated all relevant include paths across the codebase to reflect the new location of AsarWrapper.
- Adjusted CMake configurations to ensure proper compilation of the core library.

Benefits:
- Improves project structure by separating core functionalities from application-specific code.
- Facilitates easier maintenance and understanding of the codebase by clarifying the organization of core components.
2025-10-15 17:24:05 -04:00
scawful
8845bf737c refactor(docs): standardize warning messages and update documentation formatting
- Replaced "⚠️ ISSUE" with "Warning: ISSUE" for consistency across dependency architecture documentation.
- Removed checkmarks from completed items in various documents to maintain uniformity in status representation.
- Enhanced clarity by ensuring all sections follow a consistent formatting style.

Benefits:
- Improves readability and consistency in documentation, making it easier for contributors to understand the project's status and issues.
- Aligns with the overall documentation style, fostering a more professional appearance across all documents.
2025-10-15 17:03:57 -04:00
scawful
7ee8f90574 refactor(editor): remove EditorCardManager references from various editors
- Eliminated the inclusion of EditorCardManager from multiple editor header files, streamlining dependencies and reducing coupling.
- Updated comments in PaletteEditor to reflect the transition to EditorCardRegistry for card management.

Benefits:
- Enhances modularity by decoupling editor components from the centralized card manager.
- Improves maintainability and clarity in the codebase by aligning with the new card management approach.
2025-10-15 16:55:07 -04:00
scawful
49c59191ac refactor(docs): update editor status and welcome screen logic in documentation
- Revised the editor status section to reflect the current state of various editors, including stability notes and testing requirements.
- Clarified the welcome screen visibility logic in the documentation, emphasizing its behavior when no ROM is loaded and the conditions for manual control.
- Enhanced the overall structure and clarity of the development guide to better inform contributors about the project's status and UI management practices.

Benefits:
- Provides a clearer understanding of the current capabilities and testing needs of the editors.
- Improves documentation accuracy regarding UI behavior, aiding developers in troubleshooting and feature implementation.
2025-10-15 16:45:41 -04:00
scawful
3c0964d251 feat(docs): add comprehensive dependency architecture and build optimization document
- Introduced a new document detailing YAZE's dependency architecture, identifying optimization opportunities, and proposing a roadmap for reducing build times and improving maintainability.
- Included a complete dependency graph, key findings, and a detailed refactoring plan to enhance modularity and reduce circular dependencies.
- Document serves as a reference for future development and architectural decisions, aiming for 40-60% faster incremental builds.

Benefits:
- Provides a clear understanding of the current state and future direction for YAZE's architecture.
- Facilitates better decision-making for developers regarding library organization and build optimization strategies.
2025-10-15 16:35:52 -04:00
scawful
4de8f711f3 feat(editor): introduce LayoutManager for enhanced editor layouts
- Added LayoutManager to manage ImGui DockBuilder layouts for various editor types, providing professional default layouts similar to VSCode.
- Integrated layout initialization and persistence features, allowing users to save and load custom layouts.
- Updated EditorManager to initialize LayoutManager and set default layouts upon editor activation.

Benefits:
- Improves user experience by offering tailored layouts for different editing tasks.
- Enhances maintainability by centralizing layout management and initialization logic within the new LayoutManager class.
2025-10-15 16:35:32 -04:00
scawful
551b1e5d5a fix(ci): correct indentation in release workflow logging
- Adjusted the indentation for logging statements in the release.yml workflow to ensure proper execution and readability.
- This change maintains consistency in the workflow configuration and enhances clarity in the script.

Benefits:
- Improves the clarity of the workflow script, reducing potential errors during CI execution.
2025-10-15 16:19:00 -04:00
scawful
dbc4dd2732 refactor(editor): redesign welcome screen visibility logic
- Enhanced the logic for displaying the welcome screen by clarifying conditions for visibility and adding error logging for null references.
- Improved state management and debugging information to provide better insights into the welcome screen's behavior during runtime.

Benefits:
- Increases clarity and maintainability of the welcome screen logic, ensuring a more intuitive user experience.
- Enhances debugging capabilities with detailed logging of state changes and conditions affecting the welcome screen display.
2025-10-15 16:06:16 -04:00
scawful
38bdd2303b fix(ci): correct indentation in release workflow for CMAKE_TOOLCHAIN_FILE
- Adjusted the indentation for the CMAKE_TOOLCHAIN_FILE assignment in release.yml to ensure proper execution of the script.
- This change enhances readability and maintains consistency in the workflow configuration.

Benefits:
- Improves clarity in the workflow script, reducing potential errors during CI execution.
2025-10-15 15:38:29 -04:00
scawful
22e5fafc37 refactor(editor): enhance UI management and debugging tools
- Updated EditorManager to streamline UI component rendering, ensuring that UI elements like the Command Palette and Global Search are properly displayed.
- Refactored MenuOrchestrator to introduce a new Debug menu, consolidating debugging tools and enhancing accessibility for users.
- Improved PopupManager to include new popups for feature flags and data integrity checks, providing better feedback and control over debugging processes.

Benefits:
- Enhances user experience by organizing UI elements and debugging tools more effectively.
- Improves maintainability by centralizing UI management and debugging functionalities within dedicated components.
2025-10-15 15:37:11 -04:00
scawful
b8ccc2a6cd refactor(editor): improve card visibility checks across various editors
- Updated multiple editor components to check visibility flags before rendering cards, ensuring that only visible cards are displayed.
- Refactored card rendering logic in GraphicsEditor, ScreenEditor, MessageEditor, MusicEditor, SpriteEditor, and Emulator to enhance user experience and performance.
- Improved maintainability by centralizing visibility checks and ensuring consistent behavior across different editor types.

Benefits:
- Streamlines the rendering process, leading to a more efficient UI experience.
- Enhances code clarity and maintainability by standardizing visibility handling across editors.
2025-10-15 14:55:49 -04:00
scawful
71a573aee4 refactor(ci): enhance download process in CI and release workflows
- Updated the download logic in both ci.yml and release.yml to include error handling for Invoke-WebRequest.
- Added a fallback to curl.exe for downloading packages if the initial request fails, improving reliability in package retrieval.

Benefits:
- Increases robustness of the CI and release workflows by ensuring successful downloads even in case of network issues.
- Enhances maintainability by centralizing download logic and error handling in the workflow scripts.
2025-10-15 14:36:40 -04:00
scawful
1ef0419de0 refactor(editor): enhance sidebar UI and card registration in SettingsEditor
- Updated the sidebar UI in EditorCardRegistry to improve visibility and theming consistency using ThemeManager.
- Refactored SettingsEditor to register multiple settings cards, enhancing modularity and organization of settings.
- Improved the layout and interaction of category tabs, ensuring a more intuitive user experience.

Benefits:
- Streamlines the settings management process, leading to a more organized and efficient user interface.
- Enhances maintainability by clearly defining card registration and visibility logic within the editor framework.
2025-10-15 14:20:08 -04:00
scawful
f5a54b8f01 refactor(editor): integrate EditorCardRegistry for improved card management
- Updated EditorManager and various editor components to utilize EditorCardRegistry for card registration and visibility management, enhancing dependency injection and modularity.
- Refactored card registration logic across multiple editors, ensuring a consistent approach to managing editor cards.
- Improved UI coordination by delegating visibility checks and card management to the new registry, streamlining the user experience.

Benefits:
- Simplifies card management, leading to a more organized and efficient user experience.
- Enhances maintainability by clearly defining roles for card handling and editor operations, aligning with the overall architecture improvements.
2025-10-15 14:04:01 -04:00
scawful
651be0fdca refactor(editor): enhance popup management and initialization order
- Updated EditorManager to initialize PopupManager in the constructor, ensuring safe access to popups during menu operations.
- Refactored MenuOrchestrator to utilize PopupID constants for popup management, improving clarity and maintainability.
- Enhanced PopupManager to register popups with structured definitions, allowing for better organization and future expansion.

Benefits:
- Streamlines the initialization process, preventing potential crashes due to uninitialized components.
- Improves the organization of popup management, leading to a more intuitive user experience and easier maintenance.
2025-10-15 13:29:21 -04:00
scawful
a45e16e04a refactor(editor): streamline command palette and project management UI
- Removed the save as menu and new project menu from EditorManager, delegating their functionality to PopupManager for better separation of concerns.
- Introduced a command palette in UICoordinator, enhancing user experience with fuzzy search capabilities for commands.
- Updated UI components to improve clarity and maintainability, ensuring a more efficient workflow for users.

Benefits:
- Enhances the organization of UI elements, leading to a more intuitive user experience.
- Improves code maintainability by consolidating UI management responsibilities within dedicated components.
2025-10-15 13:13:21 -04:00
scawful
a7d07fca9e refactor(editor): enhance UI coordination and menu management
- Updated EditorManager to include ShortcutManager in the UICoordinator initialization, improving UI responsiveness.
- Refactored menu handling in MenuOrchestrator to delegate more responsibilities to UICoordinator, streamlining the UI flow.
- Removed unused menu items and comments, clarifying the code structure and enhancing maintainability.

Benefits:
- Improves the organization of UI components, leading to a more efficient user experience.
- Enhances clarity in the codebase by reducing clutter and focusing on essential functionalities.
2025-10-15 12:54:08 -04:00
scawful
16f2bfe15e editor manager refactor 2025-10-15 12:37:59 -04:00
scawful
f09e8c0a58 refactor(ci): enhance Windows CI and release workflows
- Removed the installation step for Ninja, simplifying the setup process.
- Added a prefetch step for MSYS runtime to ensure necessary packages are available.
- Updated CMake configuration to use a more structured argument array, improving readability and maintainability.
- Enhanced build output handling to check multiple directories for the built artifacts, ensuring better feedback on the build process.

Benefits:
- Streamlines the CI and release workflows for Windows, leading to a more efficient build process.
- Improves clarity and maintainability of the configuration scripts.
2025-10-15 10:11:58 -04:00
scawful
107475196c refactor(editor): improve session management in EditorManager
- Refactored session management methods in EditorManager to enhance clarity and maintainability.
- Adjusted context handling for session switching and duplication, ensuring proper session IDs are set.
- Updated the editor dependencies to use IRenderer instead of Renderer, aligning with the new graphics interface.

Benefits:
- Streamlines session management logic, leading to a more organized codebase.
- Improves compatibility with future graphics enhancements by adopting the IRenderer interface.
2025-10-15 09:39:38 -04:00
scawful
931a6c0747 fix(ci): simplify Ninja installation for Windows in CI and release workflows
- Replaced the PowerShell script for installing Ninja with a Chocolatey command, streamlining the installation process.
- This change enhances reliability and reduces complexity in the setup for Windows environments.

Benefits:
- Improves the efficiency of the build setup on Windows by ensuring a straightforward installation method for Ninja.
2025-10-15 09:34:28 -04:00
scawful
d5a9c6432d refactor(editor): replace SessionCardRegistry with EditorCardRegistry
- Removed the SessionCardRegistry class and its associated methods, streamlining card management within the editor.
- Updated EditorManager to utilize EditorCardRegistry for card operations, enhancing session awareness and visibility control.
- Refactored related components to ensure compatibility with the new card management structure.

Benefits:
- Simplifies card management, leading to a more organized and efficient user experience.
- Improves maintainability by clearly defining roles for card handling and editor operations.
2025-10-15 09:30:37 -04:00
scawful
c82888cab0 feat(vcpkg): add SDL2, yaml-cpp, and zlib dependencies for Windows
- Introduced new dependencies for SDL2, yaml-cpp, and zlib in the vcpkg.json file, enhancing the project's capability to support additional features on Windows.
- Updated the SDL2 override to specify version 2.30.9, ensuring compatibility with the latest features.

Benefits:
- Expands the project's functionality by integrating essential libraries, improving overall performance and maintainability.
2025-10-15 09:26:17 -04:00
scawful
e071914e83 fix(ci): update Ninja version command in CI and release workflows
- Modified the Ninja version command in both CI and release workflows to ensure the correct environment path is set before executing the version check.
- This change enhances the reliability of the Ninja installation process on Windows.

Benefits:
- Improves the setup process for Windows environments by ensuring accurate feedback on the Ninja installation, leading to more efficient builds.
2025-10-15 09:13:20 -04:00
scawful
e992e70ad9 refactor(vcpkg): remove SDL2 dependency from vcpkg configuration
- Eliminated the SDL2 dependency from the vcpkg.json file, streamlining the project's dependency management.
- Removed the associated overrides for SDL2, simplifying the configuration.

Benefits:
- Reduces complexity in the dependency setup, leading to a more maintainable project structure.
2025-10-15 09:02:17 -04:00
scawful
37a33fe25f refactor(editor): streamline window management in EditorManager
- Removed redundant window management methods from EditorManager, reducing code bloat and improving maintainability.
- Inline delegation for window management functions has been implemented in the header file, enhancing performance and clarity.
- Updated MenuOrchestrator to include new commands for showing the command palette, memory editor, and resource label manager, improving user interaction.

Benefits:
- Simplifies the EditorManager class, leading to a more organized codebase.
- Enhances user experience by providing quick access to additional functionalities through the menu system.
2025-10-15 01:12:44 -04:00
scawful
a8ae108e8a feat(ci): update Ninja installation method for Windows in CI and release workflows
- Replaced the previous method of installing Ninja with a PowerShell script that downloads and extracts Ninja directly from the official release.
- This change ensures that the installation process is more reliable and provides immediate feedback if the installation fails.

Benefits:
- Enhances the setup process for Windows environments by ensuring Ninja is correctly installed, leading to improved build efficiency.
2025-10-15 01:09:33 -04:00
scawful
e2bee5b3ba feat(ci): add Ninja installation step for Windows in CI and release workflows
- Introduced a step to install Ninja for Windows runners in both CI and release workflows, enhancing build efficiency.
- This addition ensures that the necessary build tools are available for Windows environments, streamlining the setup process.

Benefits:
- Improves the build process on Windows by ensuring Ninja is installed, leading to faster and more reliable builds.
2025-10-15 01:06:44 -04:00
scawful
5502b5246a feat(editor): add hex editor and AI agent functionalities to MenuOrchestrator
- Implemented methods in EditorManager to show the hex editor, AI agent, and chat history, enhancing the editor's capabilities.
- Updated MenuOrchestrator to include new menu items for accessing the hex editor, AI agent, chat history, and other UI elements.
- Improved user interaction by providing quick access to essential features through keyboard shortcuts.

Benefits:
- Streamlines the user experience by integrating additional editor functionalities.
- Enhances the overall architecture by clearly defining roles for UI and editor operations within the MenuOrchestrator.
2025-10-15 01:01:21 -04:00
scawful
12480626f7 refactor(editor): enhance MenuOrchestrator with new UI controls and editor actions
- Expanded MenuOrchestrator to include additional UI visibility controls and editor action delegations, improving user interaction and functionality.
- Introduced methods for showing global search, performance dashboard, and ImGui metrics, along with editor actions like undo, redo, cut, copy, paste, and find.
- Updated the EditorManager to support new functionalities, including session management and layout presets.

Benefits:
- Streamlines user experience by providing quick access to essential features and enhancing the overall architecture of the editor.
- Improves maintainability by clearly defining roles for UI and editor operations within the MenuOrchestrator.
2025-10-15 00:50:35 -04:00
scawful
2250f03f7d refactor(editor): integrate EditorCardRegistry for card management
- Introduced EditorCardRegistry class to centralize card registration and management, enhancing session awareness and visibility control.
- Refactored EditorManager to delegate card-related operations to EditorCardRegistry, improving separation of concerns and maintainability.
- Updated CMake configuration to include new source files for the EditorCardRegistry component.

Benefits:
- Streamlines card management within the editor, leading to a more organized and efficient user experience.
- Enhances the overall architecture by clearly defining roles for card handling and editor operations.
2025-10-14 23:35:19 -04:00
scawful
9f41f8c2b8 refactor(editor): introduce UICoordinator for UI management
- Added UICoordinator class to centralize UI drawing operations and state management, improving separation of concerns within the editor.
- Refactored EditorManager to delegate UI-related tasks to UICoordinator, enhancing maintainability and clarity.
- Updated CMake configuration to include new source files for the UICoordinator component.

Benefits:
- Streamlines UI management, leading to a more organized and efficient user experience.
- Enhances the overall architecture by clearly defining roles for UI handling and editor operations.
2025-10-14 22:56:01 -04:00
scawful
0127913ff9 refactor(cmake): simplify Protobuf target handling in dependencies.cmake
- Refactored the logic for appending Protobuf targets to streamline the configuration.
- Removed unnecessary checks and consolidated target handling for improved clarity and maintainability.
- Introduced YAZE_PROTOBUF_WHOLEARCHIVE_TARGETS to facilitate linking without "lite" variants.

Benefits:
- Enhances the organization of CMake configurations, leading to a more efficient build process.
2025-10-14 22:53:14 -04:00
scawful
2f84879ca9 refactor(editor): introduce MenuOrchestrator for menu management
- Added MenuOrchestrator class to handle menu construction and coordination, improving separation of concerns within the editor.
- Refactored EditorManager to delegate menu-related tasks to MenuOrchestrator, enhancing maintainability and clarity.
- Updated CMake configuration to include new source files for the MenuOrchestrator component.

Benefits:
- Streamlines menu management, leading to a more organized and efficient user experience.
- Enhances the overall architecture by clearly defining roles for menu handling and editor operations.
2025-10-14 22:26:34 -04:00
scawful
0b72b56594 refactor(cmake): enhance Protobuf target handling for MSVC
- Introduced YAZE_PROTOBUF_WHOLEARCHIVE_TARGETS to streamline linking of Protobuf targets, excluding "lite" variants.
- Updated CMake configurations across various components (yaze, yaze_core_lib, yaze_editor, yaze_net, yaze_agent, z3ed) to utilize the new whole-archive targets for MSVC builds.
- Improved test suite linking to ensure all Protobuf symbols are included during the build process.

Benefits:
- Enhances compatibility and maintainability of Protobuf linking, leading to a more robust build configuration.
2025-10-14 22:22:00 -04:00
scawful
0113d78978 refactor(editor): extract editor management responsibilities into dedicated classes
- Introduced EditorRegistry, ProjectManager, and RomFileManager to streamline editor operations and improve code organization.
- Refactored EditorManager to delegate responsibilities to the new classes, enhancing maintainability and clarity.
- Updated CMake configuration to include new source files for the extracted components.

Benefits:
- Improves separation of concerns within the editor, leading to a more modular and manageable codebase.
- Enhances the overall architecture by clearly defining roles for editor management, project handling, and ROM file operations.
2025-10-14 22:01:07 -04:00
scawful
6dbc30c11f refactor: Introduced a SessionCardRegistry and WindowDelegate for better session management in the editor.
Benefits:
- Streamlines the build process by allowing for multiple Protobuf targets, enhancing compatibility and maintainability.
- Improves session management capabilities within the editor, leading to a more organized and efficient user experience.
- Enhance Protobuf target handling in CMake configuration
- Updated CMake files to support multiple Protobuf targets, improving flexibility in linking.
- Adjusted target link libraries across various components (yaze, yaze_core_lib, yaze_editor, etc.) to utilize the new
2025-10-14 20:30:25 -04:00
scawful
76a5ab3f39 refactor(ci): update Protobuf flags for improved build configuration
- Enhanced CI and release workflows by adding flags to disable RTTI and enforce copy-in swap for Protobuf, ensuring consistent C and C++ compilation settings.
- This update aims to improve build stability and compatibility across different environments.

Benefits:
- Streamlines the Protobuf configuration, leading to a more efficient and reliable CI process.
2025-10-14 17:51:46 -04:00
scawful
8ba1d68bad refactor(ci): streamline Protobuf and gRPC configuration in workflows
- Updated CI and release workflows to remove unnecessary Protobuf DLL flags and added gRPC plugin build options for better control over the build process.
- Ensured consistent C and C++ flags across both workflows, enhancing compatibility and reducing potential issues.

Benefits:
- Improves build clarity and stability by refining the configuration for Protobuf and gRPC, leading to a more efficient CI process.
2025-10-14 16:35:03 -04:00
scawful
ce36889338 refactor(ci): enhance Protobuf static linking in workflows
- Updated CI and release workflows to include additional flags for static linking of Protobuf, ensuring consistent C and C++ compilation flags.
- Added Protobuf import prefix and suffix options to improve library handling.

Benefits:
- Improves build stability and compatibility by leveraging static linking for Protobuf, enhancing overall CI performance.
2025-10-14 16:21:00 -04:00
scawful
38f145f977 refactor(gfx): reorganize source files in gfx_library.cmake
- Moved `app/gfx/resource/arena.cc` to the GFX_CORE_SRC section and added `app/gfx/render/background_buffer.cc` to the GFX_CORE_SRC section.
- Removed `app/gfx/render/background_buffer.cc` from the GFX_RENDER_SRC section to streamline dependencies.
- Updated target link libraries to ensure correct linking of GFX components.

Benefits:
- Improves organization of graphics source files, enhancing maintainability and clarity in the build configuration.
2025-10-14 15:46:06 -04:00
scawful
f315a73905 refactor(ci): update Protobuf configuration in workflows
- Modified CI and release workflows to use static linking for Protobuf by adding flags for static libraries and MSVC static runtime.
- Ensured consistent C and C++ flags across both workflows to improve compatibility and reduce potential issues.

Benefits:
- Enhances build stability and performance by leveraging static linking for Protobuf, leading to a more reliable CI process.
2025-10-14 15:44:49 -04:00