Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ash: Hide provisional extensions behind new provisional feature flag #952

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,10 @@ jobs:
run: cargo test --workspace --all-targets
- name: Test docs
run: cargo test --workspace --doc
- name: Test all targets
run: cargo test --workspace --all-targets -F provisional
- name: Test docs
run: cargo test --workspace --doc -F provisional

fmt:
name: Rustfmt
Expand Down
2 changes: 2 additions & 0 deletions ash/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ loaded = ["libloading", "std"]
debug = []
# Whether the standard library should be required
std = []
# Enable provisional Vulkan extensions. May see *semver-breaking* code changes in non-breaking releases!
provisional = []

[package.metadata.release]
no-dev-version = true
Expand Down
1 change: 1 addition & 0 deletions ash/src/extensions/amdx/shader_enqueue.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#![cfg(feature = "provisional")]
//! <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_AMDX_shader_enqueue.html>

use crate::vk;
Expand Down
1 change: 1 addition & 0 deletions ash/src/extensions/nv/cuda_kernel_launch.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#![cfg(feature = "provisional")]
//! <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_NV_cuda_kernel_launch.html>

use crate::read_into_uninitialized_vector;
Expand Down
8 changes: 7 additions & 1 deletion ash/src/extensions_generated.rs
Original file line number Diff line number Diff line change
Expand Up @@ -511,6 +511,7 @@ pub mod amd {
#[doc = "Extensions tagged AMDX"]
pub mod amdx {
#[doc = "VK_AMDX_shader_enqueue"]
#[cfg(feature = "provisional")]
pub mod shader_enqueue {
use super::super::*;
pub use {
Expand Down Expand Up @@ -5532,8 +5533,10 @@ pub mod ext {
self.handle
}
}
#[allow(non_camel_case_types)]
#[doc = "Implemented for all types that can be passed as argument to `pipeline_properties` in [`PFN_vkGetPipelinePropertiesEXT`]"]
#[doc = ""]
#[doc = "Provided by VK_EXT_pipeline_properties"]
#[allow(non_camel_case_types)]
pub unsafe trait GetPipelinePropertiesEXTParamPipelineProperties {}
unsafe impl GetPipelinePropertiesEXTParamPipelineProperties
for PipelinePropertiesIdentifierEXT<'_>
Expand Down Expand Up @@ -14828,6 +14831,7 @@ pub mod khr {
}
}
#[doc = "VK_KHR_portability_subset"]
#[cfg(feature = "provisional")]
pub mod portability_subset {
use super::super::*;
pub use {
Expand Down Expand Up @@ -19248,6 +19252,7 @@ pub mod nv {
};
}
#[doc = "VK_NV_cuda_kernel_launch"]
#[cfg(feature = "provisional")]
pub mod cuda_kernel_launch {
use super::super::*;
pub use {
Expand Down Expand Up @@ -19656,6 +19661,7 @@ pub mod nv {
}
}
#[doc = "VK_NV_displacement_micromap"]
#[cfg(feature = "provisional")]
pub mod displacement_micromap {
use super::super::*;
pub use {
Expand Down
284 changes: 142 additions & 142 deletions ash/src/vk/bitflags.rs

Large diffs are not rendered by default.

30 changes: 30 additions & 0 deletions ash/src/vk/constants.rs
Original file line number Diff line number Diff line change
@@ -1,31 +1,61 @@
use super::definitions::*;
#[doc = "Provided by VK_VERSION_1_0"]
pub const MAX_PHYSICAL_DEVICE_NAME_SIZE: usize = 256;
#[doc = "Provided by VK_VERSION_1_0"]
pub const UUID_SIZE: usize = 16;
#[doc = "Provided by VK_VERSION_1_1"]
pub const LUID_SIZE: usize = 8;
#[doc = "Provided by VK_VERSION_1_0"]
pub const MAX_EXTENSION_NAME_SIZE: usize = 256;
#[doc = "Provided by VK_VERSION_1_0"]
pub const MAX_DESCRIPTION_SIZE: usize = 256;
#[doc = "Provided by VK_VERSION_1_0"]
pub const MAX_MEMORY_TYPES: usize = 32;
#[doc = "The maximum number of unique memory heaps, each of which supporting 1 or more memory types"]
#[doc = ""]
#[doc = "Provided by VK_VERSION_1_0"]
pub const MAX_MEMORY_HEAPS: usize = 16;
#[doc = "Provided by VK_VERSION_1_0"]
pub const LOD_CLAMP_NONE: f32 = 1000.00;
#[doc = "Provided by VK_VERSION_1_0"]
pub const REMAINING_MIP_LEVELS: u32 = !0;
#[doc = "Provided by VK_VERSION_1_0"]
pub const REMAINING_ARRAY_LAYERS: u32 = !0;
#[doc = "Provided by VK_EXT_image_sliced_view_of_3d"]
pub const REMAINING_3D_SLICES_EXT: u32 = !0;
#[doc = "Provided by VK_VERSION_1_0"]
pub const WHOLE_SIZE: u64 = !0;
#[doc = "Provided by VK_VERSION_1_0"]
pub const ATTACHMENT_UNUSED: u32 = !0;
#[doc = "Provided by VK_VERSION_1_0"]
pub const TRUE: Bool32 = 1;
#[doc = "Provided by VK_VERSION_1_0"]
pub const FALSE: Bool32 = 0;
#[doc = "Provided by VK_VERSION_1_0"]
pub const QUEUE_FAMILY_IGNORED: u32 = !0;
#[doc = "Provided by VK_VERSION_1_1"]
pub const QUEUE_FAMILY_EXTERNAL: u32 = !1;
#[doc = "Provided by VK_EXT_queue_family_foreign"]
pub const QUEUE_FAMILY_FOREIGN_EXT: u32 = !2;
#[doc = "Provided by VK_VERSION_1_0"]
pub const SUBPASS_EXTERNAL: u32 = !0;
#[doc = "Provided by VK_VERSION_1_1"]
pub const MAX_DEVICE_GROUP_SIZE: usize = 32;
#[doc = "Provided by VK_VERSION_1_2"]
pub const MAX_DRIVER_NAME_SIZE: usize = 256;
#[doc = "Provided by VK_VERSION_1_2"]
pub const MAX_DRIVER_INFO_SIZE: usize = 256;
#[doc = "Provided by VK_KHR_ray_tracing_pipeline"]
pub const SHADER_UNUSED_KHR: u32 = !0;
#[doc = "Provided by VK_KHR_global_priority"]
pub const MAX_GLOBAL_PRIORITY_SIZE_KHR: usize = 16;
#[doc = "Provided by VK_EXT_shader_module_identifier"]
pub const MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT: usize = 32;
#[doc = "Provided by VK_KHR_pipeline_binary"]
pub const MAX_PIPELINE_BINARY_KEY_SIZE_KHR: usize = 32;
#[doc = "Provided by VK_KHR_video_decode_av1"]
pub const MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR: usize = 7;
#[doc = "Provided by VK_AMDX_shader_enqueue"]
#[cfg(feature = "provisional")]
pub const SHADER_INDEX_UNUSED_AMDX: u32 = !0;
pub const SHADER_UNUSED_NV: u32 = SHADER_UNUSED_KHR;
Loading
Loading