diff --git a/.github/workflows/generated-bindings-ci.yml b/.github/workflows/generated-bindings-ci.yml index 5c265ab..3f972d1 100644 --- a/.github/workflows/generated-bindings-ci.yml +++ b/.github/workflows/generated-bindings-ci.yml @@ -20,7 +20,7 @@ jobs: if: github.event_name == 'pull_request' runs-on: ubuntu-latest steps: - - uses: actions/checkout@v7 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: fetch-depth: 0 - name: Accept only generated binding files @@ -96,13 +96,13 @@ jobs: v-version: 0.5.2 runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v7 - - uses: actions/checkout@v7 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: antono2/v_vulkan_bindings ref: 2700e4f4c58e9e625657b80f4f44b0584d7c6096 path: generator - - uses: prantlf/setup-v-action@v4 + - uses: prantlf/setup-v-action@92f20bea50d2c9931a28c96bb4997a3c7357baf0 # v4 if: matrix.v-channel == 'stable' with: version: ${{ matrix.v-version }} @@ -110,7 +110,7 @@ jobs: # tool commands such as `v test`; setup-v-action@v4 omits it from cache. - name: Check out source-built V if: matrix.v-channel != 'stable' - uses: actions/checkout@v7 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 id: checkout_v_source continue-on-error: ${{ matrix.v-channel == 'master' }} with: @@ -120,7 +120,7 @@ jobs: fetch-depth: 1 - name: Check out the matching v3 bootstrap source if: matrix.v-channel == 'v3' && steps.checkout_v_source.outcome == 'success' - uses: actions/checkout@v7 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: vlang/vc ref: 4598bc7e4894c154b27391e4442005fff2fbbd68 @@ -128,7 +128,7 @@ jobs: fetch-depth: 1 - name: Check out the matching v3 TinyCC runtime if: matrix.v-channel == 'v3' && steps.checkout_v_source.outcome == 'success' - uses: actions/checkout@v7 + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: vlang/tccbin ref: d6e7ac1b1bcc98aed734a6ecbfa8509f24606c74 @@ -285,7 +285,7 @@ jobs: permissions: contents: write steps: - - uses: actions/checkout@v7 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: fetch-depth: 0 - name: Validate and publish the package release diff --git a/CHANGELOG.md b/CHANGELOG.md index 1afe545..53620b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,15 @@ This changelog tracks the semantic version of the V module in `v.mod`. Generated binding snapshots continue to use the Vulkan registry version stored in `VERSION`. +## Unreleased + +### Fixed + +- Spell `LogicOp.or_` with a trailing underscore because `or` is a V3 keyword. + Its Vulkan value remains 7. +- Represent opaque Metal and IOSurface handle fields as `voidptr`, matching + their pointer-sized C ABI while satisfying the strict V3 frontend. + ## 2.0.0 - 2026-09-22 ### Changed diff --git a/vulkan.v b/vulkan.v index e6c8c7c..f1f32ea 100644 --- a/vulkan.v +++ b/vulkan.v @@ -2242,7 +2242,7 @@ pub enum LogicOp as u32 { and_inverted = 4 no = 5 xor = 6 - or = 7 + or_ = 7 nor = 8 equivalent = 9 invert = 10 @@ -28563,7 +28563,7 @@ pub struct C.VkExportMetalDeviceInfoEXT { pub mut: sType StructureType = StructureType.export_metal_device_info_ext pNext voidptr = unsafe { nil } - mtlDevice MTLDevice_id + mtlDevice voidptr } // ExportMetalCommandQueueInfoEXT extends VkExportMetalObjectsInfoEXT @@ -28575,7 +28575,7 @@ pub mut: sType StructureType = StructureType.export_metal_command_queue_info_ext pNext voidptr = unsafe { nil } queue Queue - mtlCommandQueue MTLCommandQueue_id + mtlCommandQueue voidptr } // ExportMetalBufferInfoEXT extends VkExportMetalObjectsInfoEXT @@ -28587,7 +28587,7 @@ pub mut: sType StructureType = StructureType.export_metal_buffer_info_ext pNext voidptr = unsafe { nil } memory DeviceMemory - mtlBuffer MTLBuffer_id + mtlBuffer voidptr } // ImportMetalBufferInfoEXT extends VkMemoryAllocateInfo @@ -28598,7 +28598,7 @@ pub struct C.VkImportMetalBufferInfoEXT { pub mut: sType StructureType = StructureType.import_metal_buffer_info_ext pNext voidptr = unsafe { nil } - mtlBuffer MTLBuffer_id + mtlBuffer voidptr } // ExportMetalTextureInfoEXT extends VkExportMetalObjectsInfoEXT @@ -28613,7 +28613,7 @@ pub mut: imageView ImageView bufferView BufferView plane ImageAspectFlagBits - mtlTexture MTLTexture_id + mtlTexture voidptr } // ImportMetalTextureInfoEXT extends VkImageCreateInfo @@ -28625,7 +28625,7 @@ pub mut: sType StructureType = StructureType.import_metal_texture_info_ext pNext voidptr = unsafe { nil } plane ImageAspectFlagBits - mtlTexture MTLTexture_id + mtlTexture voidptr } // ExportMetalIOSurfaceInfoEXT extends VkExportMetalObjectsInfoEXT @@ -28637,7 +28637,7 @@ pub mut: sType StructureType = StructureType.export_metal_io_surface_info_ext pNext voidptr = unsafe { nil } image Image - ioSurface IOSurfaceRef + ioSurface voidptr } // ImportMetalIOSurfaceInfoEXT extends VkImageCreateInfo @@ -28648,7 +28648,7 @@ pub struct C.VkImportMetalIOSurfaceInfoEXT { pub mut: sType StructureType = StructureType.import_metal_io_surface_info_ext pNext voidptr = unsafe { nil } - ioSurface IOSurfaceRef + ioSurface voidptr } // ExportMetalSharedEventInfoEXT extends VkExportMetalObjectsInfoEXT @@ -28661,7 +28661,7 @@ pub mut: pNext voidptr = unsafe { nil } semaphore Semaphore event Event - mtlSharedEvent MTLSharedEvent_id + mtlSharedEvent voidptr } // ImportMetalSharedEventInfoEXT extends VkSemaphoreCreateInfo,VkEventCreateInfo @@ -28672,7 +28672,7 @@ pub struct C.VkImportMetalSharedEventInfoEXT { pub mut: sType StructureType = StructureType.import_metal_shared_event_info_ext pNext voidptr = unsafe { nil } - mtlSharedEvent MTLSharedEvent_id + mtlSharedEvent voidptr } @[keep_args_alive]