* Update release number to 124.
Github Issues:
* Fix Makefile SPECREMARK macro to work when not building in a git tree
(public issue 992).
* Ignore pname:aspectMask for unused attachments in
slink:VkSubpassDescription2KHR valid usage statements (public pull
request 1028).
* Minor markup / spelling fixes (public pull requests 1035, 1045).
Internal Issues:
* Fix markup in Valid Usage statement for slink:VkCreateFramebuffer
(internal issue 1823).
* Add a new <<synchronization-signal-operation-order, _signal operation
order_>> section to the synchronization chapter which describes in
detail the ordering guarantees provided by the API between fence and
semaphore signal operations (internal merge request 3368).
* Move generated `appendix/meta/` files into the Makefile GENERATED
directory (internal merge request 3381).
New Extensions
* `<<VK_KHR_shader_clock>>`
* `<<VK_KHR_timeline_semaphore>>`
* Update release number to 121.
Github Issues:
* Add missing `structextends` attribute in `vk.xml` for
slink:VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR (public
issue 1018).
* Change attributes of flink:vkCmdCopyAccelerationStructureNV,
flink:vkCmdWriteAccelerationStructuresPropertiesNV,
flink:vkCmdBuildAccelerationStructureNV, and flink:vkCmdTraceRaysNV to
require that these commands execute outside renderpasses (public issue
1021).
* Add an issue to the `<<VK_EXT_buffer_device_address>>` appendix
discussing the introduction of new names and aliasing by equivalent old
names (public pull request 1024).
Internal Issues:
* Protect the `VK_KHR_sampler_mirror_clamp_to_edge` extension with
asciidoctor conditionals, and remove it from the core-only specification
builds, where it had previously been force-included in the Makefile. It
is now treated like any other extension (internal issue 1776).
* Edit some asciidoctor anchor names starting with `features-features-` to
just start with `features-`, since the old chapters was split into 3
pieces. There are still some mild naming inconsistencies with anchors
which may be addressed in the future (internal issue 1792).
* Add `KHR` alias for the non-suffixed extension token
ename:VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE, for compatibility
with naming rules for extensions (internal issue 1796).
* Clarify requirements for external memory in NOTEs for
sname:VkExternalMemoryBufferCreateInfo, and valid usage statements for
flink:vkBindBufferMemory, slink:VkBindBufferMemoryInfo,
flink:vkBindImageMemory, and slink:VkBindImageMemoryInfo (internal merge
request 3301).
* Make extension version numbers in `vk.xml` and extension appendices
consistent. In a few cases, we could not recover history at this
granularity, and left the summary of a version's change undefined
(internal merge request 3323).
* Fix invocation of `CodeInlineMacro` in the Ruby extension backing the
`code:` macro, which was delegating to the wrong base class (internal
merge request 3331).
* Modify `reg.py` to do a better job of recognizing equivalent <enum>
definitions.
* Add a `sortorder` attribute to XML feature and extension tags.
New Extensions
* `<<VK_AMD_device_coherent_memory>>`
* Update release number to 92.
Public Issues:
* Move and modify valid usage statements dealing with pname:aspectMask in
flink:vkCmdClearColorImage, flink:vkCmdClearDepthStencilImage, and
slink:VkClearAttachment, so they are in places where all necessary
information is available (public issue 529).
* Fix math markup in <<textures-texel-anisotropic-filtering, Texel
Anisotropic Filtering>> (public pull request 840).
* Fix misspellings (public pull request 845).
Internal Issues:
* Add installation instructions and a Makefile "`chunked`" target for
chunked HTML generation (internal issue 1352).
* Fix pipeline mesh diagram style; also fix a minor bug in the classic
pipeline diagram where vertex/index buffers wrongly fed into the vertex
shader (internal issue 1436).
* Make asciidoctor ERROR output raise an error, and don't suppress
executed command output from CI make invocation (internal issue 1454).
* Minor typo fixes and clarifications for `VK_NV_raytracing`.
* Cleanup extension-specific properties
** Remove duplicated documentation for pname:maxDiscardRectangles,
pname:pointClippingBehavior, and pname:maxVertexAttribDivisor (they
shouldn't be documented with the other members of
slink:VkPhysicalDeviceLimits at all).
** Remove duplicate anchor for pname:maxVertexAttribDivisor
** Consistently document stext:VkPhysicalDevice<Extension>PropertiesKHR
*** Always document pname:sType/pname:pNext (was inconsistent before)
*** Always mention chaining to slink:VkPhysicalDeviceProperties2 (and not
as slink:VkPhysicalDeviceProperties2KHR)
*** Always include Valid Usage statements last
* Update Makefile 'checklinks' target and associated scripts, and fix
markup problems identified by checkLinks.py, so that we can rely on the
checklinks script as part of Gitlab CI.
* Update release number to 83.
Public Issues:
* Use [%inline] directive for all SVGs to reduce file size (public pull
request 734).
* Convert XML `value` aliases into \<alias> tags (public pull request
747).
* Fix metadoc script showing non-selected extensions (public pull request
748).
* Reapply public pull request 742 to make
ename:VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT part of the
graphices pipeline (public pull request 749).
* Fix numerous typos related to accidental duplication of words (public
pull request 760).
* Fix `vk.xml` contact typos (public pull request 761).
Internal Issues:
* Add images to the <<Standard sample locations>> table (internal issue
1115).
* Add a definition of "`Inherited from`" precision in the
<<spirvenv-precision-operation, Precision and Operation of SPIR-V
Instructions>> section (internal issue 1314).
* Clarify that both built-in and user-defined variables count against the
location limits for shader interfaces in the
<<interfaces-iointerfaces-locations, Location Assignment>> section
(internal issue 1316).
* Merge "`required`" capabilities into the <<spirvenv-capabilities-table,
list of optional: SPIR-V capabilities>> (internal issue 1320).
* Relax the layout matching rules of descriptors referring to only a
single aspect of a depth/stencil image, by reference to the new
<<resources-image-layouts-matching-rule, Image Layout Matching Rules>>
section (internal issue 1346).
* Revert extension metadoc generator warning about name mismatches to a
diagnostic, due to annoying warnings in build output for conscious
choices we've made (internal issue 1351).
Other Issues:
* Reserve bits for pending vendor extensions.
* Make Vulkan consistent with SPIR-V regarding code:DepthReplacing and
code:FragDepth in the <<interfaces-builtin-variables, Built-In
Variables>> section.
* Add missing ChangeLog entries for the previous three spec updates.
* Update release number to 82.
Public Issues:
* Add flink:vkDestroyPipelineLayout valid usage statement that the layout
must not have been used with command buffers still in the recording
state (public issue 730).
* Correct \<unused> tag for elink:VkResult in `vk.xml` (public merge
request 746).
Internal Issues:
* Add a valid usage statement to flink:vkQueueSubmit, and similar language
to the definitions of <<synchronization-queue-transfers-acquire, acquire
operations>> requiring that an acquire operation follow a previous
release of the same subresource (internal issue 1290).
* Add <<resources-image-format-features,Image Format Features>> and
<<resources-image-view-format-features,Image View Format Features>>
sections that precisely define the slink:VkFormatFeatures supported by
images and image views, and rewrite valid usage statements to reference
these sections instead of duplicating language (internal issue 1310).
* Reword and consolidate synchronization valid usage statements for
flink:vkCmdPipelineBarrier such that they correctly account for mutiple
possible self-dependencies (internal issue 1322).
* Change order of <<Standard sample locations>> for 2xMSAA (internal issue
1347).
* Add definitions of "`<<Correctly Rounded>>`" and "`<<ULP>>`" in the
SPIR-V environment appendix, and "`Units in the Last Place (ULP)`" in
the glossary.
New Extensions:
* `VK_NV_device_diagnostic_checkpoints`