Commit Graph

2467 Commits

Author SHA1 Message Date
scawful
97f00d3fc6 Add E2E and ZSCustomOverworld test suites for comprehensive testing
- Introduced new E2E test suite for comprehensive ROM testing, validating the complete ROM editing workflow.
- Added ZSCustomOverworld test suite to validate version upgrades and data integrity.
- Updated `EditorManager` to register the new test suites.
- Enhanced CMake configuration to include the new test files.
- Updated README to reflect the new testing capabilities and best practices for AI agent testing.
2025-09-28 15:11:31 -04:00
scawful
ddf63165eb Remove legacy Visual Studio project generation scripts
- Deleted `generate-vs-projects-simple.py`, `generate-vs-projects.bat`, and `generate-vs-projects.ps1` scripts to streamline project setup.
- Updated `README.md` to reflect the removal of these scripts and simplify project generation instructions.
- Removed `test_asar_integration.py` and `test-vs-generation.ps1` scripts as part of the cleanup process.
2025-09-28 14:50:04 -04:00
scawful
e10d29b802 Update YAZE project configuration and build instructions
- Increased warning level to Level4 in YAZE.vcxproj for better code quality checks.
- Enhanced preprocessor definitions to address C++23 deprecation warnings and improve compatibility with Clang.
- Added additional compiler options for better build performance and compatibility.
- Updated build instructions to recommend Clang for Windows, highlighting its advantages over MSVC.
- Included detailed setup options for both Clang and MSVC, along with troubleshooting tips for common issues.
2025-09-28 14:47:54 -04:00
scawful
0d20065fd0 Update release workflow to specify shell for build and packaging steps
- Added 'bash' as the shell for the Build and Package steps in the release workflow to ensure consistent execution environment.
- This change enhances compatibility and reliability during the CI process.
2025-09-28 14:43:14 -04:00
scawful
8f661eab18 Add Generated Files filter and custom build commands in YAZE.vcxproj
- Introduced a new filter for "Generated Files" to organize generated headers and configuration files.
- Added custom build commands to generate the yaze_config.h file with versioning information for different build configurations (Debug and Release) across multiple platforms (Win32, x64, ARM64).
- Removed an unused header file from the project structure to streamline the codebase.
2025-09-28 14:41:09 -04:00
scawful
c2ffbab1bd Add YAZE.vcxproj.filters for project organization
- Introduced a new filters file (YAZE.vcxproj.filters) to enhance project structure in Visual Studio.
- Organized source, header, and resource files into logical groups for better navigation and management.
- Included various filters for application components, editor modules, and assets to streamline development workflow.
2025-09-28 14:29:46 -04:00
scawful
a4821a28e1 Enhance CI workflow and packaging process
- Added support for post-build test discovery in the release workflow to improve testing efficiency.
- Updated Windows packaging logic to prefer CMake-generated packages, with fallback to manual packaging if necessary.
- Improved error handling and output messages during the packaging process for better clarity and reliability.
- Conditional test discovery based on the YAZE_BUILD_TESTS flag in CMakeLists.txt to streamline test execution.
2025-09-28 14:11:02 -04:00
scawful
560c8fd4dd fix invalid filename in yaze vcxproj 2025-09-28 14:03:26 -04:00
scawful
bd049a14fd Update release workflow to standardize naming and improve patch function signatures
- Changed the release notes header from "Yaze" to "yaze" for consistency in the release workflow.
- Updated the CreateBpsPatch and ApplyBpsPatch functions in bps.h to return absl::Status for better error handling and clarity.
2025-09-28 12:28:13 -04:00
scawful
9bb67b2fe1 Update Visual Studio project configuration and enhance CI workflow
- Modified the YAZE.vcxproj file to include additional include directories for improved project structure and dependency management.
- Added new header and source files related to the editor and Zelda3 components, expanding the project's functionality.
- Removed the non-blocking test execution step from the GitHub Actions workflow to streamline the release process.
2025-09-28 12:24:36 -04:00
scawful
1b7a622f9c Remove unused project references and enhance pre-release testing in CI workflow
- Deleted references to the yaze_test, yaze_core, yaze_c, and z3ed projects from the Visual Studio solution file (YAZE.sln) to streamline the project structure.
- Added a non-blocking test execution step for pre-release versions in the GitHub Actions workflow (release.yml), allowing tests to run without failing the release process, improving CI reliability.
2025-09-28 12:13:35 -04:00
scawful
4b01d7be1d Add initial Visual Studio solution and project files
- Created a new Visual Studio solution file (YAZE.sln) to manage the project structure.
- Added a project file (YAZE.vcxproj) with configurations for Debug and Release builds across multiple platforms (Win32, x64, ARM64).
- Established initial project structure with relevant source and header files included for compilation.
- Updated theme manager to remove unnecessary logging statements, streamlining the code for better readability.
2025-09-28 12:08:11 -04:00
scawful
cb107ae69c Remove PNG and ZLIB support from the project
- Eliminated all references to PNG and ZLIB dependencies in CMake configuration and project files.
- Updated documentation to reflect the removal of PNG support and related functionalities.
- Adjusted build scripts and source files to remove unused code related to PNG handling, ensuring a cleaner codebase.
2025-09-28 12:03:29 -04:00
scawful
dfc5b329af Enhance vcpkg integration in project generation script
- Improved the vcpkg path checking mechanism to include additional common installation locations and check for global installations.
- Added support for manifest mode by detecting the presence of a vcpkg.json file, allowing automatic dependency management.
- Enhanced output messages to provide clearer feedback on vcpkg usage and installation status, improving user experience.
2025-09-28 11:18:56 -04:00
scawful
d69609abec Enhance Windows packaging process in release workflow
- Updated the Windows packaging step in release.yml to use PowerShell's Compress-Archive for creating zip files, improving compatibility and reliability.
- Added informative echo statements to clarify the packaging process for Windows builds.
2025-09-28 11:11:15 -04:00
scawful
c16725b61d Fix vcpkg path handling in project generation script
- Updated the vcpkg path check in the generate-vs-projects.ps1 script to ensure proper path formatting.
- Changed the path concatenation method for improved clarity and consistency.
2025-09-28 11:04:58 -04:00
scawful
f321b2350c Revise Visual Studio setup documentation and enhance project generation script
- Updated the Visual Studio setup guide to recommend using a project generation script for easier configuration.
- Added detailed instructions for the new script, including features and usage examples.
- Improved the script to check for vcpkg installation and automatically install dependencies if missing.
- Introduced a test script to verify the project generation process with different configurations.
- Enhanced error handling and output messages in the project generation script for better user experience.
2025-09-28 11:02:25 -04:00
scawful
20a93bc491 Add SDL2main support for Windows builds in CMake configuration
- Updated the CMake configuration to include SDL2main for Windows builds when using the bundled SDL.
- Added a definition to handle SDL main entry point, improving compatibility for Windows applications.
- Updated changelog to reflect the new support for SDL2main in version 0.3.1.
2025-09-28 10:49:46 -04:00
scawful
3a940a0cc2 Refactor Info.plist creation in release workflows for improved readability
- Replaced the heredoc syntax with echo commands to create the Info.plist file in both release-complex.yml and release-simplified.yml.
- This change enhances clarity and maintainability of the plist generation process.
2025-09-28 03:07:45 -04:00
scawful
5aa43e81d2 Refactor macOS packaging process in release workflow and introduce dedicated script
- Removed inline macOS packaging logic from release.yml and replaced it with a call to a new script, create-macos-bundle.sh, for better organization and maintainability.
- Added create-macos-bundle.sh to handle the creation of the macOS application bundle and DMG file, improving clarity and separation of concerns in the build process.
2025-09-28 02:54:01 -04:00
scawful
49c36c457e Update build instructions and project configurations for improved clarity and integration
- Changed the output directory for Doxygen documentation to 'docs/' for better organization.
- Updated Visual Studio project generation command to use Python for enhanced vcpkg integration.
- Revised build instructions to clarify the use of vcpkg and added fallback mechanisms for CI/CD workflows.
- Updated subproject commit IDs for various libraries to ensure consistency across dependencies.
2025-09-28 02:42:17 -04:00
scawful
25ba1a13fe Refactor vcpkg availability check in release workflows for improved clarity
- Updated the condition for checking vcpkg availability in release workflows to enhance readability.
- Ensured consistent formatting across release-complex.yml, release-simplified.yml, and release.yml.
2025-09-28 02:34:26 -04:00
scawful
a7f548f12a Enhance Windows vcpkg setup in release workflows with fallback mechanism
- Added a fallback mechanism for vcpkg setup to handle failures gracefully.
- Introduced environment variables to indicate vcpkg availability and switch to a minimal build configuration if vcpkg is not available.
- Updated CMake configuration to conditionally use vcpkg toolchain based on the availability flag.
2025-09-28 02:30:19 -04:00
scawful
443622839c Remove Windows x86 build configurations from release workflows and update vcpkg commit ID for consistency 2025-09-28 02:12:29 -04:00
scawful
c8f9663d98 Update vcpkg baseline to a specific commit ID for consistency across dependencies 2025-09-28 02:11:03 -04:00
scawful
1cce652cf4 Update build instructions for Visual Studio project generation and vcpkg integration
- Changed the project file generation command from PowerShell to Python for better integration with vcpkg.
- Enhanced documentation to clarify automatic vcpkg dependency management for zlib, libpng, and SDL2.
- Added note that generated project files will remain in sync with CMake configuration.
2025-09-28 02:09:16 -04:00
scawful
ab3272422e Remove Visual Studio project files and update documentation for automated setup
- Deleted `YAZE.sln` and `YAZE.vcxproj` files as they are now generated automatically.
- Updated the Windows development guide to reflect changes in project file generation and vcpkg integration.
- Enhanced troubleshooting section with common issues related to dependencies and project setup.
- Modified setup script messages to clarify the new workflow for opening and building the project in Visual Studio.
2025-09-28 02:08:42 -04:00
scawful
f59af42555 Update vcpkg commit ID across release workflows and add comprehensive documentation for release processes
- Updated the vcpkgGitCommitId to '2024.12.12' in release-complex.yml, release-simplified.yml, and release.yml for consistency.
- Added a new documentation file B4-release-workflows.md detailing the different release workflows, their purposes, features, and use cases.
- Updated index.md to include a link to the new release workflows documentation.
2025-09-28 01:52:17 -04:00
scawful
a0a2a40b47 Update LoadSystemFonts function to clarify Linux compatibility
- Added a comment to indicate that the LoadSystemFonts function is intended for loading Linux system fonts into ImGui.
- Maintained the function for compatibility while ensuring it does not perform any operations on Linux, as system font loading is now handled by NFD (Native File Dialog).
2025-09-28 01:49:04 -04:00
scawful
04b46f1461 Remove unused Abseil internal modules from CMake configuration to streamline dependencies and improve build clarity. 2025-09-28 01:47:56 -04:00
scawful
abdf7434d6 Update vcpkg configuration and remove GLEW dependencies for improved compatibility
- Updated the builtin-baseline in vcpkg.json to the latest version.
- Removed GLEW references from CMake files to avoid MSYS2 issues and streamline the build process.
- Adjusted include and link directories in z3ed.cmake to reflect the removal of GLEW.
2025-09-28 01:47:21 -04:00
scawful
ff0e9c0cc3 Refactor font loading for Windows and Linux compatibility
- Removed Windows-specific font loading code to streamline the font loading process.
- Updated the LoadSystemFonts function to indicate that system font loading is now handled by NFD (Native File Dialog) for Linux.
- Maintained the function for compatibility while ensuring it does not perform any operations on Linux.
2025-09-28 01:46:14 -04:00
scawful
2a39cc644e Enhance Abseil integration and improve Windows font loading functionality
- Added additional Abseil flags modules to the CMake configuration for better support.
- Refactored Windows-specific font loading code to avoid namespace conflicts by using the `::` prefix for Windows API calls.
- Improved error handling and ensured proper memory management when retrieving font paths from the Windows registry.
2025-09-28 01:42:46 -04:00
scawful
5aa9fde4a4 Update workflow names for clarity: changed 'Release' to 'Release-Complex' in release-complex.yml and 'Release' to 'Release-Simplified' in release-simplified.yml. 2025-09-28 01:35:51 -04:00
scawful
e1cc58bcdb Remove Abseil dependency from vcpkg.json and clear overrides section to simplify project configuration. 2025-09-28 01:35:00 -04:00
scawful
b8a3bfb738 Remove Boost dependencies from vcpkg.json to streamline project requirements. This change excludes boost-system, boost-filesystem, and boost-thread from the list of dependencies, maintaining compatibility with non-UWP platforms. 2025-09-28 01:08:41 -04:00
scawful
52ae0e864a Add simple Visual Studio project generator script for YAZE
- Introduced a new Python script, `generate-vs-projects-simple.py`, to create Visual Studio project files without complex CMake dependencies.
- The script generates both `.vcxproj` and `.sln` files, consolidating source and header files for the YAZE project.
- Updated the Windows development setup script to utilize the new generator, providing fallback to the original if the simple generator fails.
- Enhanced user instructions for building the project in Visual Studio.
2025-09-28 01:07:16 -04:00
scawful
8205de84f9 Refactor Windows development setup script to a sequential approach for improved clarity and user experience
- Transitioned from a function-based structure to a sequential approach, simplifying the script flow.
- Enhanced user feedback with clear status messages for each setup step, including checks for project directory, Visual Studio, Git, Python, and vcpkg.
- Improved error handling and instructions for missing dependencies, ensuring a smoother setup process.
- Streamlined the process for generating Visual Studio project files and testing builds, making it more user-friendly.
2025-09-28 00:59:43 -04:00
scawful
e008bc2766 Refactor Windows development setup script to a function-based structure for improved readability and maintainability
- Transitioned to a function-based approach, reducing complex conditional statements.
- Enhanced user feedback with a consistent messaging function for status updates.
- Modularized setup steps for checking project directory, Visual Studio, Git, Python, and vcpkg.
- Improved error handling and instructions for each setup step, ensuring a clearer user experience.
2025-09-28 00:56:55 -04:00
scawful
99a5f6e4f4 Refactor Windows development setup script for clarity and improved user feedback
- Simplified the script structure by removing complex conditional statements.
- Enhanced output messages for each setup step, providing clearer guidance on the status of checks for project files, Visual Studio, Git, Python, and vcpkg.
- Improved error handling and user instructions for missing dependencies and setup steps.
- Streamlined the process for generating Visual Studio project files and testing builds, ensuring a more user-friendly experience.
2025-09-28 00:51:51 -04:00
scawful
50bf1f9d71 Enhance Windows build scripts for improved functionality and user experience
- Refactored batch and PowerShell build scripts to streamline argument parsing and enhance error handling.
- Added support for cleaning build directories and improved feedback for missing dependencies.
- Updated project file generation logic to handle missing configuration files more gracefully.
- Introduced a new validation script to ensure the build environment is correctly set up before building.
- Removed obsolete setup scripts to simplify the repository structure.
2025-09-28 00:47:16 -04:00
scawful
9a51c1d5a7 Refactor Windows development setup script for improved error handling and dependency checks
- Enhanced Git and Python checks to ensure proper installation before proceeding with setup.
- Updated vcpkg cloning logic to verify Git availability and provide clearer error messages.
- Improved project file generation and build testing sections with additional user feedback and error handling.
- Removed obsolete PowerShell syntax test script to streamline the repository.
2025-09-28 00:42:28 -04:00
scawful
5020980c7b Add new dependencies to vcpkg.json for GLEW and Boost libraries
- Included GLEW, boost-system, boost-filesystem, and boost-thread as dependencies.
- Specified platform compatibility to exclude UWP for these libraries.
2025-09-28 00:37:58 -04:00
scawful
820720cffe Remove obsolete PowerShell script for generating Visual Studio projects and add a new script for testing PowerShell syntax. The new script verifies basic constructs used in build scripts, ensuring proper syntax and functionality. 2025-09-28 00:37:48 -04:00
scawful
77b4e8cd40 Refactor Visual Studio solution and project files for improved organization and support
- Removed obsolete project entries from the solution file to streamline structure.
- Updated YAZE project configuration to enable vcpkg integration and multi-architecture support.
- Enhanced build scripts for Windows, including automated setup and testing processes.
- Added new documentation for Windows development setup and build instructions.
2025-09-28 00:34:20 -04:00
scawful
8b659e991c Enhance project reference validation in Visual Studio scripts
- Updated batch and PowerShell scripts to check for proper references to YAZE.vcxproj in the solution file.
- Added verification for project configurations, providing user feedback on their status.
- Improved messaging for error states to guide users in ensuring correct project setup.
2025-09-28 00:20:37 -04:00
scawful
b568559efb Add YAZE project to Visual Studio solution with multi-architecture support 2025-09-28 00:20:19 -04:00
scawful
bec691da69 Refactor Visual Studio project configuration scripts for clarity and usability
- Updated batch and PowerShell scripts to improve the configuration process for Visual Studio projects.
- Enhanced user feedback by checking for existing solution files and verifying project references.
- Added help options in the PowerShell script to guide users on available parameters and usage examples.
- Improved messaging for success and error states to facilitate troubleshooting and user experience.
2025-09-28 00:11:21 -04:00
scawful
da4057cb71 Improve Windows build setup in GitHub Actions workflow
- Enhanced the installation process for build tools and dependencies using Chocolatey, with error handling for individual package installations.
- Added verification steps to confirm successful installation of CMake, Ninja, Git, and Python3.
- Updated environment setup to ensure a minimal build configuration and improved user feedback during the setup process.
2025-09-28 00:02:29 -04:00
scawful
ed299300e3 Update build instructions and enhance Windows development setup
- Revised build instructions to include comprehensive Windows support with automated setup scripts and Visual Studio integration.
- Added detailed sections for Windows development, including recommended setup scripts and manual options for vcpkg integration.
- Improved clarity on build commands and troubleshooting steps for CMake and Visual Studio issues.
- Introduced new scripts for testing CMake configuration and streamlined project generation processes.
2025-09-28 00:00:12 -04:00