- Add table listing all build platforms and their configurations
- Document runner types (GitHub-hosted, Self-hosted, AWS CodeBuild)
- Show container images used for each platform
- Include Linux x86_64, Linux ARM64, and Windows x86_64 environments
- Merge _build_manylinux_self_host.yml into _build_linux_self_host.yml
- Add automatic package manager detection (apt-get/dnf) for both x86_64 and ARM64
- Add environment check steps to all self-hosted workflows
- Update build.yml to use unified workflow with container-image parameter
- Remove duplicate build_wheels_manylinux_self_hosted job
- Update test workflows to use consolidated workflow
- Remove manylinux_self_hosted matrix configuration
- Set manylinux container image for ARM64 test workflow
- Create .github/actions/build-and-upload composite action for shared build logic
- Consolidate Python/uv setup, CUDA setup, wheel building, testing, and upload steps
- Update _build_linux.yml to use new composite action (reduced from 136 to 69 lines)
- Update _build_linux_arm_self_host.yml to use composite action with cleanup enabled
- Update _build_linux_self_host.yml for both container and no-container jobs
- Update _build_manylinux_self_host.yml to use composite action
- Reduce code duplication by ~200+ lines across all workflow files
- Move reusable functions (parse_numeric_version, normalize_semantic_version, get_tag_from_url, get_os_emoji, collect_versions_from_assets, format_versions) to common.py for code reuse across scripts
- Add comprehensive docstrings to all modules and functions for better maintainability
- Enhance parse_wheel_filename to support multiple manylinux tags (e.g., manylinux_2_24_x86_64.manylinux_2_28_x86_64)
- Improve normalize_platform_name to handle manylinux formats with multiple tags
- Refactor create_packages.py to use shared utilities from common.py
- Refactor create_release_history.py with improved function naming and error handling
- Refactor create_release_note.py with better error messages and usage documentation
- Decode URL encoding for improved readability in package documentation
- Update docs/packages.md with formatted output from refactored scripts
- Update .venv/bin to .venv/Scripts for Windows compatibility
- Use PowerShell syntax for path assignment in _build_windows_code_build.yml
- Ensure correct GitHub PATH environment variable setup on Windows
- Add step ID to auditwheel_repair for proper output tracking
- Update wheel path references to use correct step outputs
- Add patchelf dependency for ARM Linux builds
- Add explicit shell specification for manylinux workflow
- Remove unnecessary sudo calls from dnf commands in self-hosted manylinux environment
- Commands are already executed with root privileges in the CI runner
- Change wheel output to use full path instead of basename for better flexibility
- Add patchelf to build dependencies for wheel repair operations
- Enable auditwheel repair step with proper exclusions for CUDA/torch libraries
- Separate wheel path variable to track both standard and manylinux versions
- Rename manylinux workflow file to reflect its dedicated purpose
- Update workflow references to use renamed manylinux workflow
- Use fromjson() for runner parameter parsing in ARM build workflow
- Update test workflows to use container environment consistently
- Support both manylinux and standard wheel uploads to releases
- Replace WHEEL_NAME variables with WHEEL_PATH to store full file paths
instead of just filenames, eliminating redundant directory concatenation
- Update all workflow references to use WHEEL_PATH directly in install
and upload commands
- Simplify manylinux wheel handling by storing full paths in output variables
- Reduce tested versions in Linux self-hosted matrix to focus on Python 3.14
- Reduce tested versions in ARM64 self-hosted matrix to focus on Python 3.14
and flash-attn 2.8.3
- Apply formatting standardization to Windows CodeBuild matrix
- Replace actions/setup-python with uv-based Python installation
- Consolidate build dependencies into Python installation step
- Enable auditwheel repair and manylinux wheel generation across all Linux builds
- Add patchelf as build dependency for glibc compatibility
- Update Python version to 3.14 in build and test workflows
- Convert runs-on array syntax to single runner value with fromjson()
- Update runner parameter defaults to JSON string format
- Add runner labels to build workflow calls
- Update test workflow runner configurations
- Remove unused test-utils.yml workflow
- Add arm64 label to ARM64 self-hosted runner job
- Add x64 label to x86_64 self-hosted runner jobs (both container and non-container)
- Ensures runner selection by both custom runner name and architecture type
- Move WORKDIR before USER directive to follow Docker best practices
- Run installdependencies.sh as root user with explicit USER root context
- Reorder ENTRYPOINT to the end of the Dockerfile
- Remove unnecessary sudo prefix since running as root
- Move auditwheel repair after initial release upload with continue-on-error to allow pipeline continuation
- Add manylinux platform normalization support in normalize_platform_name()
- Expand self-hosted build matrix to include Python 3.14 and Flash Attention 2.8.3
- Improve wheel upload flow by separating regular and manylinux wheel handling
- Rename workflow file from _build_linux_self_host.yml to _build_linux_arm_self_host.yml for clarity
- Update workflow_call inputs to use flexible container image configuration
- Remove use-container flag and replace with container-image parameter
- Consolidate ubuntu image handling with --platform linux/arm64 option
- Update test-arm-self-hosted.yml to reference the renamed workflow