Skip to content

Feat/0.7.1 - #268

Closed
Agrael1 wants to merge 10 commits into
masterfrom
feat/0.7.1
Closed

Agrael1 wants to merge 10 commits into
masterfrom
feat/0.7.1

Conversation

@Agrael1

@Agrael1 Agrael1 commented Sep 13, 2026

Copy link
Copy Markdown
Owner

No description provided.

Agrael1 and others added 10 commits April 30, 2026 18:08
Replaced all uses of wis::format and fmtlib with C++20 std::format and related functions. Removed the custom format.hpp header and all references to it. Updated CMake and Conan configuration to drop fmtlib dependency. Codebase now requires a C++20 compiler with std::format support. Minor code cleanups and function signature formatting improvements included.
Introduce WISDOM_USE_AGILITY_SDK CMake option to enable building with the DirectX 12 Agility SDK for access to newer DX12 features on older Windows versions. Refactor dependency logic to conditionally fetch and deploy Agility SDK or DirectX-Headers as needed. Update DX12Allocator linkage and macro definitions accordingly. Replace legacy Agility deployment functions with a unified install function. Update documentation and source includes to reflect these changes.
Refactored packaging to produce separate NuGet (without Agility SDK) and ZIP (with Agility SDK) artifacts using distinct build/install roots. Updated CI to validate package contents, ensuring correct inclusion/exclusion of Agility SDK files. Improved CMake install logic for headers, clarified multi-config scripts, and refactored Agility SDK export macros. Enabled unity builds for Linux and made minor CMake target property adjustments.
- Move NuGet/CMake Agility helpers to functions.cmake (Windows only)
- Add wis_load_agility_sdk(), wis_patch_agility_executable(), and wis_install_agility_win32() for automated Agility SDK setup and symbol export
- Update CMakeLists.txt to use new helpers and add WISDOM_DOWNLOAD_DXC option
- Improve Conan packaging: version from file, header_only option, better component handling
- Update documentation for new Agility SDK usage paths and helpers
- Remove manual WISDOM_EXPORT_AGILITY_SYMBOLS() macro from entry_main.cpp
- General cleanup and modernization of Agility SDK handling for all build systems
Major refactor of packaging and deployment:
- Switch to CPack for both NuGet and ZIP generation, with generator-specific logic and improved metadata.
- Remove legacy nuget.cmake; add scripts for NuGet layout and DLL placement.
- Refactor DXC handling: new CMake functions for DXC download/discovery, only included in ZIP; NuGet depends on Microsoft.Direct3D.DXC.
- Update CI to build, package, and integration-test both formats.
- Add PowerShell scripts and sample projects for automated ZIP/NuGet integration testing.
- Update wisdom.targets and add nuget.config for correct MSBuild/NuGet integration.
- Introduce wis::in_place for in-place construction, update C++ API.
- Modernize packaging scripts and update .gitignore for new artifacts and tests.
- Reformatted C/C++ API functions for consistency and readability
- Replaced `supported_initial_transitions` with `gpu_upload_heap_budget` in `WisDeviceMemoryProperties` (API change)
- Added Conan integration and option to manage dependencies via CMake
- Introduced PowerShell scripts for automated build and test on Windows
- Improved code formatting and generator logic for large file sets
- Fixed and clarified documentation comments throughout the codebase
- Miscellaneous bug fixes, error handling, and style improvements
Removed gpu_upload_heap_budget from WisDeviceMemoryProperties and DeviceMemoryProperties in both C and C++ APIs. Updated all related code, documentation, and XML definitions to eliminate references to this field. Clarified documentation for gpu_upload_supported and host_image_copy_supported. Made minor code formatting improvements.
Refactor CMake dependency management to support toggling between Conan and CPM via WISDOM_USE_CONAN. Move Conan logic from CMakeLists.txt to deps.cmake and update Vulkan/DirectX 12 memory allocator targets to match Conan package names. Improve find_package integration and error handling for missing dependencies. Update conanfile.py to always require Vulkan Memory Allocator.
- Enhance NuGet discovery and fallback in functions.cmake
- Rename DX12Allocator to D3D12MemoryAllocator in wisdom.targets
- Remove header_only option; default to shared build in conanfile.py
- Add d3d12-memory-allocator as a Windows dependency
- Always enable WISDOM_USE_CONAN in CMake toolchain
- Refactor package_info for correct targets and dependencies
- Add Conan integration test scripts and minimal test project
- Add CMakeUserPresets.json for Conan/CMake workflows
- Improve documentation in address_mode_enum.h
- Fix wisdom-platform-shared linkage for shared builds
@Agrael1 Agrael1 closed this Sep 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant