Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
#!/usr/bin/python3
|
|
|
|
#
|
Change log for January 13, 2019 Vulkan 1.1.98 spec update:
* Update release number to 98.
Public Issues:
* Fix missing markup in flink:vkDestroyPipelineLayout valid usage
statement (pull request 882).
* Add missing contributors for `<<VK_EXT_buffer_device_address>>` (public
pull request 891).
Internal Issues:
* Detect nested bullet points in valid usage blocks and warn about them
during VUID assignment (internal issue 1382).
* Update the style guide to document the process for reserving new bits in
bitmask types (internal issue 1411).
* Clarify for slink:VkApplicationInfo::pname:apiVersion and in the
<<fundamentals-validusage-versions, Valid Usage for Newer Core
Versions>> section when it is valid for an application to use a certain
version of Vulkan API functionality (for an instance and for a
device/physical device); and when the validation layers must generate an
error (internal issue 1412).
* Add optional <<memory-model-availability-visibility, transitive
availability/visibility operations to the memory model, including a new
pname:vulkanMemoryModelAvailabilityVisibilityChains feature for
slink:VkPhysicalDeviceVulkanMemoryModelFeaturesKHR (internal issue
1460).
* Add the code:StorageBuffer storage class to those in the
<<interfaces-resources-descset, Descriptor Set Interface>> (internal
issue 1480).
* Add missing `returnedonly` tags for a number of returned extension
structures that can be passed in pname:pNext chains (internal issue
1515).
* Clean up and rearrange some spec language for
slink:VkRenderPassCreateInfo and slink:VkAttachmentReference.txt
(internal issue 1522).
* Correctly round the code:OpVectorTimesScalar and
code:OpMatrixTimesScalar SPIR-V operations in the <<Precision of core
SPIR-V Instructions>> table (internal merge request 2996).
* Work around cases in flink:vkCmdBeginTransformFeedbackEXT,
flink:vkCmdEndTransformFeedbackEXT, and
slink:VkPipelineCoverageModulationStateCreateInfoNV where an array
parameter is `optional` but the length is not in `vk.xml`. This is an
interim fix using `noautovalidity` + handcoded VU replacing those that
should be autogenerated (internal issue 2944 and
https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/480).
* Remove redundant capability validation of the code:float16 and code:int8
SPIR-V capabilities from the <<spirvenv-capabilities, Capabilities>>
section, since they are already covered in the preceding table.
* Update check_spec_links script, including validation for reference page
open blocks. Fix errors identified by the script.
2019-01-13 05:53:27 -08:00
|
|
|
# Copyright (c) 2018-2019 Collabora, Ltd.
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
#
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
# you may not use this file except in compliance with the License.
|
|
|
|
# You may obtain a copy of the License at
|
|
|
|
#
|
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
#
|
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
# See the License for the specific language governing permissions and
|
|
|
|
# limitations under the License.
|
|
|
|
#
|
|
|
|
# Author(s): Ryan Pavlik <ryan.pavlik@collabora.com>
|
|
|
|
#
|
|
|
|
# Purpose: This file performs some basic checks of the custom macros
|
|
|
|
# used in the AsciiDoctor source for the spec, especially
|
|
|
|
# related to the validity of the entities linked-to.
|
|
|
|
|
|
|
|
from pathlib import Path
|
|
|
|
|
|
|
|
from reg import Registry
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
from spec_tools.entity_db import EntityDatabase
|
|
|
|
from spec_tools.macro_checker import MacroChecker
|
|
|
|
from spec_tools.macro_checker_file import MacroCheckerFile
|
|
|
|
from spec_tools.main import checkerMain
|
|
|
|
from spec_tools.shared import (AUTO_FIX_STRING, EXTENSION_CATEGORY, MessageId,
|
|
|
|
MessageType)
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
###
|
|
|
|
# "Configuration" constants
|
|
|
|
|
Change log for August 17, 2019 Vulkan 1.1.120 spec update:
* Update release number to 120.
Github Issues:
* Add slink:VkAccelerationStructureTypeNV explicitly to extension XML for
`<<VK_NV_ray_tracing>>` (public issue 848).
* Add missing valid usage statements for feature flags in
slink:VkCommandBufferInheritanceInfo (public pull request 1017).
Internal Issues:
* Clarify behavior of non-premultiplied destination colors for
`<<VK_EXT_blend_operation_advanced>>` prior to the definition of
slink:VkBlendOverlapEXT (internal issue 1766).
* Fix the confusing phrasing "`no other queue must: be (doing something)`"
for flink:vkQueuePresentKHR, flink:vkQueueSubmit, and
flink:vkQueueBindSparse (internal issue 1774).
* Add `<<VK_EXT_validation_features>>` flag to enable best practices
checks, which will soon be available in the validation layer (internal
issue 1779).
* Specify allowed characters for VUID tag name components in the style
guide (internal issue 1788).
* Update links to SPIR-V extension specifications, and parameterize their
markup in case the URLs change in the future (internal issue 1797).
* Fix an off-by-one error in the valid usage statement for
slink:VkPipelineExecutableInfoKHR (internal merge request 3303).
* Clean up markup indentation not matching the style guide (internal merge
request 3314).
* Minor script updates to allow refpage aliases, generate a dynamic TOC
for refpages, generate Apache rewrite rules for aliases, open external
links from refpages in a new window, and synchronize with the OpenCL
scripts. This will shortly enable a paned navigation setup for refpages,
similar to the OpenCL 2.2 refpages (internal merge request 3322).
* Script updates to add tests to the checker, refactor and reformat code,
generate better text for some valid usage statements, use more Pythonic
idioms, and synchronize with the OpenXR scripts (internal merge request
3239).
* Script updates and minor fixes in spec language to not raise checker
errors for refpage markup of pages not existing in the API, such as
VKAPI_NO_STDINT_H. Remove corresponding suppression of some
check_spec_links.py tests from .gitlab-ci.yml and 'allchecks' target
(internal merge request 3315).
2019-08-17 15:33:21 -07:00
|
|
|
FREEFORM_CATEGORY = 'freeform'
|
|
|
|
|
|
|
|
# defines mentioned in spec but not needed in registry
|
|
|
|
EXTRA_DEFINES = ('VKAPI_ATTR', 'VKAPI_CALL', 'VKAPI_PTR', 'VK_NO_STDINT_H')
|
|
|
|
|
|
|
|
# Extra freeform refpages in addition to EXTRA_DEFINES
|
|
|
|
EXTRA_REFPAGES = ('WSIheaders',)
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
# These are marked with the code: macro
|
2019-04-16 05:19:43 -07:00
|
|
|
SYSTEM_TYPES = set(('void', 'char', 'float', 'size_t', 'uintptr_t',
|
Change log for August 17, 2019 Vulkan 1.1.120 spec update:
* Update release number to 120.
Github Issues:
* Add slink:VkAccelerationStructureTypeNV explicitly to extension XML for
`<<VK_NV_ray_tracing>>` (public issue 848).
* Add missing valid usage statements for feature flags in
slink:VkCommandBufferInheritanceInfo (public pull request 1017).
Internal Issues:
* Clarify behavior of non-premultiplied destination colors for
`<<VK_EXT_blend_operation_advanced>>` prior to the definition of
slink:VkBlendOverlapEXT (internal issue 1766).
* Fix the confusing phrasing "`no other queue must: be (doing something)`"
for flink:vkQueuePresentKHR, flink:vkQueueSubmit, and
flink:vkQueueBindSparse (internal issue 1774).
* Add `<<VK_EXT_validation_features>>` flag to enable best practices
checks, which will soon be available in the validation layer (internal
issue 1779).
* Specify allowed characters for VUID tag name components in the style
guide (internal issue 1788).
* Update links to SPIR-V extension specifications, and parameterize their
markup in case the URLs change in the future (internal issue 1797).
* Fix an off-by-one error in the valid usage statement for
slink:VkPipelineExecutableInfoKHR (internal merge request 3303).
* Clean up markup indentation not matching the style guide (internal merge
request 3314).
* Minor script updates to allow refpage aliases, generate a dynamic TOC
for refpages, generate Apache rewrite rules for aliases, open external
links from refpages in a new window, and synchronize with the OpenCL
scripts. This will shortly enable a paned navigation setup for refpages,
similar to the OpenCL 2.2 refpages (internal merge request 3322).
* Script updates to add tests to the checker, refactor and reformat code,
generate better text for some valid usage statements, use more Pythonic
idioms, and synchronize with the OpenXR scripts (internal merge request
3239).
* Script updates and minor fixes in spec language to not raise checker
errors for refpage markup of pages not existing in the API, such as
VKAPI_NO_STDINT_H. Remove corresponding suppression of some
check_spec_links.py tests from .gitlab-ci.yml and 'allchecks' target
(internal merge request 3315).
2019-08-17 15:33:21 -07:00
|
|
|
'int8_t', 'uint8_t',
|
|
|
|
'int32_t', 'uint32_t',
|
|
|
|
'int64_t', 'uint64_t'))
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
ROOT = Path(__file__).resolve().parent.parent
|
2019-04-16 05:19:43 -07:00
|
|
|
DEFAULT_DISABLED_MESSAGES = set((
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
MessageId.LEGACY,
|
|
|
|
MessageId.REFPAGE_MISSING,
|
|
|
|
MessageId.MISSING_MACRO,
|
|
|
|
MessageId.EXTENSION,
|
|
|
|
# TODO *text macro checking actually needs fixing for Vulkan
|
|
|
|
MessageId.MISUSED_TEXT,
|
|
|
|
MessageId.MISSING_TEXT
|
2019-04-16 05:19:43 -07:00
|
|
|
))
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
CWD = Path('.').resolve()
|
|
|
|
|
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
class VulkanEntityDatabase(EntityDatabase):
|
|
|
|
"""Vulkan-specific subclass of EntityDatabase."""
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for August 17, 2019 Vulkan 1.1.120 spec update:
* Update release number to 120.
Github Issues:
* Add slink:VkAccelerationStructureTypeNV explicitly to extension XML for
`<<VK_NV_ray_tracing>>` (public issue 848).
* Add missing valid usage statements for feature flags in
slink:VkCommandBufferInheritanceInfo (public pull request 1017).
Internal Issues:
* Clarify behavior of non-premultiplied destination colors for
`<<VK_EXT_blend_operation_advanced>>` prior to the definition of
slink:VkBlendOverlapEXT (internal issue 1766).
* Fix the confusing phrasing "`no other queue must: be (doing something)`"
for flink:vkQueuePresentKHR, flink:vkQueueSubmit, and
flink:vkQueueBindSparse (internal issue 1774).
* Add `<<VK_EXT_validation_features>>` flag to enable best practices
checks, which will soon be available in the validation layer (internal
issue 1779).
* Specify allowed characters for VUID tag name components in the style
guide (internal issue 1788).
* Update links to SPIR-V extension specifications, and parameterize their
markup in case the URLs change in the future (internal issue 1797).
* Fix an off-by-one error in the valid usage statement for
slink:VkPipelineExecutableInfoKHR (internal merge request 3303).
* Clean up markup indentation not matching the style guide (internal merge
request 3314).
* Minor script updates to allow refpage aliases, generate a dynamic TOC
for refpages, generate Apache rewrite rules for aliases, open external
links from refpages in a new window, and synchronize with the OpenCL
scripts. This will shortly enable a paned navigation setup for refpages,
similar to the OpenCL 2.2 refpages (internal merge request 3322).
* Script updates to add tests to the checker, refactor and reformat code,
generate better text for some valid usage statements, use more Pythonic
idioms, and synchronize with the OpenXR scripts (internal merge request
3239).
* Script updates and minor fixes in spec language to not raise checker
errors for refpage markup of pages not existing in the API, such as
VKAPI_NO_STDINT_H. Remove corresponding suppression of some
check_spec_links.py tests from .gitlab-ci.yml and 'allchecks' target
(internal merge request 3315).
2019-08-17 15:33:21 -07:00
|
|
|
def __init__(self, *args, **kwargs):
|
|
|
|
super().__init__(*args, **kwargs)
|
|
|
|
self._conditionally_recognized = set(('fname', 'sname'))
|
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def makeRegistry(self):
|
|
|
|
registryFile = str(ROOT / 'xml/vk.xml')
|
|
|
|
registry = Registry()
|
|
|
|
registry.loadFile(registryFile)
|
|
|
|
return registry
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def getNamePrefix(self):
|
|
|
|
return "vk"
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def getPlatformRequires(self):
|
|
|
|
return 'vk_platform'
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def getSystemTypes(self):
|
|
|
|
return SYSTEM_TYPES
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def populateMacros(self):
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
self.addMacros('t', ['link', 'name'], ['funcpointers', 'flags'])
|
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def populateEntities(self):
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
# These are not mentioned in the XML
|
|
|
|
for name in EXTRA_DEFINES:
|
Change log for August 17, 2019 Vulkan 1.1.120 spec update:
* Update release number to 120.
Github Issues:
* Add slink:VkAccelerationStructureTypeNV explicitly to extension XML for
`<<VK_NV_ray_tracing>>` (public issue 848).
* Add missing valid usage statements for feature flags in
slink:VkCommandBufferInheritanceInfo (public pull request 1017).
Internal Issues:
* Clarify behavior of non-premultiplied destination colors for
`<<VK_EXT_blend_operation_advanced>>` prior to the definition of
slink:VkBlendOverlapEXT (internal issue 1766).
* Fix the confusing phrasing "`no other queue must: be (doing something)`"
for flink:vkQueuePresentKHR, flink:vkQueueSubmit, and
flink:vkQueueBindSparse (internal issue 1774).
* Add `<<VK_EXT_validation_features>>` flag to enable best practices
checks, which will soon be available in the validation layer (internal
issue 1779).
* Specify allowed characters for VUID tag name components in the style
guide (internal issue 1788).
* Update links to SPIR-V extension specifications, and parameterize their
markup in case the URLs change in the future (internal issue 1797).
* Fix an off-by-one error in the valid usage statement for
slink:VkPipelineExecutableInfoKHR (internal merge request 3303).
* Clean up markup indentation not matching the style guide (internal merge
request 3314).
* Minor script updates to allow refpage aliases, generate a dynamic TOC
for refpages, generate Apache rewrite rules for aliases, open external
links from refpages in a new window, and synchronize with the OpenCL
scripts. This will shortly enable a paned navigation setup for refpages,
similar to the OpenCL 2.2 refpages (internal merge request 3322).
* Script updates to add tests to the checker, refactor and reformat code,
generate better text for some valid usage statements, use more Pythonic
idioms, and synchronize with the OpenXR scripts (internal merge request
3239).
* Script updates and minor fixes in spec language to not raise checker
errors for refpage markup of pages not existing in the API, such as
VKAPI_NO_STDINT_H. Remove corresponding suppression of some
check_spec_links.py tests from .gitlab-ci.yml and 'allchecks' target
(internal merge request 3315).
2019-08-17 15:33:21 -07:00
|
|
|
self.addEntity(name, 'dlink',
|
|
|
|
category=FREEFORM_CATEGORY, generates=False)
|
|
|
|
for name in EXTRA_REFPAGES:
|
|
|
|
self.addEntity(name, 'code',
|
|
|
|
category=FREEFORM_CATEGORY, generates=False)
|
|
|
|
|
|
|
|
def shouldBeRecognized(self, macro, entity_name):
|
|
|
|
"""Determine, based on the macro and the name provided, if we should expect to recognize the entity."""
|
|
|
|
if super().shouldBeRecognized(macro, entity_name):
|
|
|
|
return True
|
|
|
|
|
|
|
|
# The *name: macros in Vulkan should also be recognized if the entity name matches the pattern.
|
|
|
|
if macro in self._conditionally_recognized and self.likelyRecognizedEntity(entity_name):
|
|
|
|
return True
|
|
|
|
return False
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
class VulkanMacroCheckerFile(MacroCheckerFile):
|
|
|
|
"""Vulkan-specific subclass of MacroCheckerFile."""
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def handleWrongMacro(self, msg, data):
|
|
|
|
"""Report an appropriate message when we found that the macro used is incorrect.
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
May be overridden depending on each API's behavior regarding macro misuse:
|
|
|
|
e.g. in some cases, it may be considered a MessageId.LEGACY warning rather than
|
|
|
|
a MessageId.WRONG_MACRO or MessageId.EXTENSION.
|
|
|
|
"""
|
|
|
|
message_type = MessageType.WARNING
|
|
|
|
message_id = MessageId.WRONG_MACRO
|
|
|
|
group = 'macro'
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
if data.category == EXTENSION_CATEGORY:
|
|
|
|
# Ah, this is an extension
|
|
|
|
msg.append(
|
|
|
|
'This is apparently an extension name, which should be marked up as a link.')
|
|
|
|
message_id = MessageId.EXTENSION
|
|
|
|
group = None # replace the whole thing
|
|
|
|
else:
|
|
|
|
# Non-extension, we found the macro though.
|
|
|
|
if data.macro[0] == self.macro[0] and data.macro[1:] == 'link' and self.macro[1:] == 'name':
|
|
|
|
# First letter matches, old is 'name', new is 'link':
|
|
|
|
# This is legacy markup
|
|
|
|
msg.append(
|
|
|
|
'This is legacy markup that has not been updated yet.')
|
|
|
|
message_id = MessageId.LEGACY
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
else:
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
# Not legacy, just wrong.
|
|
|
|
message_type = MessageType.ERROR
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
msg.append(AUTO_FIX_STRING)
|
|
|
|
self.diag(message_type, message_id, msg,
|
|
|
|
group=group, replacement=self.makeMacroMarkup(data=data), fix=self.makeFix(data=data))
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
def makeMacroChecker(enabled_messages):
|
2019-04-16 05:19:43 -07:00
|
|
|
"""Create a correctly-configured MacroChecker instance."""
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
entity_db = VulkanEntityDatabase()
|
|
|
|
return MacroChecker(enabled_messages, entity_db, VulkanMacroCheckerFile, ROOT)
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
default_enabled_messages = set(MessageId).difference(
|
|
|
|
DEFAULT_DISABLED_MESSAGES)
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
all_docs = [str(fn)
|
|
|
|
for fn in sorted((ROOT / 'chapters/').glob('**/*.txt'))]
|
|
|
|
all_docs.extend([str(fn)
|
|
|
|
for fn in sorted((ROOT / 'appendices/').glob('**/*.txt'))])
|
Change log for December 16, 2018 Vulkan 1.1.96 spec update:
* Update release number to 96.
Public Issues:
* Fix typo in `vk.xml` for `structextends` attribute of
slink:VkPhysicalDeviceShadingRateImagePropertiesNV (public PR 870).
* Fix links in optimized PDF output (public PR 879).
Internal Issues:
* Add a link to GitHub contributors in the <<credits, Other Credits>>
section (internal issue 808).
* Clarify the behavior of command aliases described in the <<versions,Core
Revisions>> and <<initialization-functionpointers, Command Function
Pointers>> sections and the registry schema document with respect to
whether they are or are not the same entry point, and what the behaviour
of the ftext:vkGet*ProcAddr commands is for each alias (internal issue
1462).
* Update slink:VkPipelineShaderStageCreateInfo valid usage statements for
writing to code:Layer and code:viewportIndex to apply to any vertex
processing stage (internal issue 1475).
* Make sparse image creation optional for Y'C~B~C~R~ formats in the
<<features-required-format-support, Required Format Support>> section
and the <<features-formats-requiring-sampler-ycbcr-conversion, Formats
requiring sampler Y'C~B~C~R~ conversion for
ename:VK_IMAGE_ASPECT_COLOR_BIT image views>> table (internal issue
1476).
* Modify the valid usage statement for
flink:vkCmdDrawIndirectByteCountEXT::pname:vertexStride to use the
pname:maxTransformFeedbackBufferDataStride limit rather than the
pname:maxVertexInputBindingStride limit, which is a better match for
transform feedback related operations (internal issue 1487).
* Changed all members of slink:VkPhysicalDevicePCIBusInfoPropertiesEXT to
have the `uint32_t` type. This is an imcompatible change to an EXT
that's very recently released; although this is against usual Vulkan WG
policy, we discussed and consider this an acceptable risk, but have
polled the mesa-dev list in case there are use cases we missed (internal
issue 1492).
* Set spec vetsion to 1 for `VK_GOOGLE_hlsl_functionality1` and
`VK_GOOGLE_decorate_string` in `vk.xml` (internal MR 2948).
* Remove redundant valid usage statement `VkImageCreateInfo-pNext-02395`
(internal MR 2950).
* Add `check_spec_links.py` script, use it in Gitlab CI, and fix many
minor markup issues discovered by the script (internal MR 2955).
* Update `BUILD.md` to the current Ruby version (2.5.3), and make some
corresponding updates to per-platform build instructions (internal MR
2956).
* Fix binding numbers and other details in
flink:vkUpdateDescriptorSetWithTemplate.txt example code blocks
(internal MR 2960).
* Remove some nautovalidity="true" in `vk.xml` for NV extensions where
it's clearly wrong (internal MR 2970).
2018-12-16 22:22:53 -08:00
|
|
|
|
Change log for February 3, 2019 Vulkan 1.1.99 spec update:
* Update release number to 99.
Public Issues:
* Add missing pname:pMemoryHostPointerProperties description to
flink:vkGetMemoryHostPointerPropertiesEXT.txt (public pull request 896).
* Minor markup fixes (public pull request 900).
* Minor update to `khronos.css` and markup fixes (originally proposed in
public pull request 901, but done via an internal MR).
Internal Issues:
* Document restrictions on image queries for Y'CbCr formats in the
<<features-formats-requiring-sampler-ycbcr-conversion>> table as well as
for slink:sname:VkImageFormatProperties and slink:VkImageCreateInfo
(internal issue 1361).
* Correct type of the code:FragSizeEXT built-in in the
<<interfaces-builtin-variables, Built-In Variables>> section (internal
issue 1526).
* Clean up math in the <<textures, Image Operations>> chapter by
refactoring, using better naming conventions, updating diagrams to use
the correct orientation, etc. (internal merge request 2968).
* Fix minor typos for slink:VkImageCreateInfo and
slink:VkImageStencilUsageCreateInfoEXT.
* Add missing documentation for tlink:VkResolveModeFlagsKHR.
* Fix extension dependency of pname:scalarBlockLayout in the
<<features-features-requirements, Feature Requirements>> section.
* Fix indexing math for shader binding table calculations in the
<<shader-binding-table-indexing-rules, Indexing Rules>> section, and use
spelling "`any-hit`" consistently.
* Reconcile valid usage statement and text for sampled image layouts in
slink:VkWriteDescriptorSet
(https://github.com/KhronosGroup/Vulkan-ValidationLayers/issues/551).
* Make SPIR-V code:OpConvertUToPtr and code:OpConvertPtrToU operations
require a 64-bit integer for physical storage buffer pointers in the
<<spirvenv-module-validation, Validation Rules within a Module>>
section.
* Update to KaTeX 10.0.
New Extensions:
* `VK_EXT_filter_cubic`
* `VK_NV_dedicated_allocation_image_aliasing`
2019-02-04 01:26:23 -08:00
|
|
|
checkerMain(default_enabled_messages, makeMacroChecker,
|
|
|
|
all_docs)
|