Vulkan API specifications 1.0.4 released

Started by JeGX, February 26, 2016, 01:51:30 PM

Previous topic - Next topic

0 Members and 5 Guests are viewing this topic.

JeGX

Quote
Change log for August 11, 2019 Vulkan 1.1.119 spec update:

  * Update release number to 119.
  * A new extension was accidentally left out of the 1.1.118 spec update.
    This update corrects that oversight.

New Extensions:

  * `<<VK_KHR_pipeline_executable_properties>>`

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/5a1c484b7e65eb7d83b160f8c92b0cfd77ddbd53

New extension:
VK_KHR_pipeline_executable_properties

JeGX

Quote
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).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/521e98405f8587ce6506811125c001f1eda26314

JeGX

Quote
Change log for August 25, 2019 Vulkan 1.1.121 spec update:

  * 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>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/59750fe4c72a9295a94e22474060d3a1635e92c8

New extension:
- VK_AMD_device_coherent_memory

JeGX

Quote
Change log for September 8, 2019 Vulkan 1.1.122 spec update:

  * Update release number to 122.

Internal Issues:

  * Add style guide language on not using standalone `+` signs (internal
    issue 736); not using leading whitespace for markup (internal issue
    747); and on keeping descriptions of a single API in a contiguous block
    of markup (internal issue 949), and apply them to the specification.
  * Add a glossary definition of "`constant integral expression`", pointing
    to the SPIR-V "`constant instruction`" definition (internal issue 1225).
  * Many minor edits to improve writing style consistency and capture
    additional style guidelines (internal issue 1553).
  * Clarify that <<fragops-depth-write, depth writes are not performed>> if
    there is no depth framebuffer attachment (internal issue 1771).
  * Allow implementations to use rectangular line style of interpolation for
    <<primsrast-lines-bresenham, wide Bresenham lines>>, though replicating
    attributes is still preferred. Clarify that code:FragCoord is not
    replicated (internal issue 1772).
  * Resolve a contradiction in valid usage statements for
    slink:VkImageCreateInfo and slink:VkImageStencilUsageCreateInfoEXT
    (internal issue 1773).
  * Add style guide discussion of markup for indented equations, and use
    markup workaround for asciidoctor 2 compatibility (internal issue 1793).
  * Deprecate the `<<VK_EXT_validation_flags>>` extension in `vk.xml` and
    the extension appendix (internal issue 1801).
  * Add a new checker script `scripts/xml_consistency.py`. This is not
    currently run as part of internal CI (internal merge request 3285).
  * Correct "`an`" -> "`a`" prepositions where needed (internal merge
    request 3334).
  * Clarify that the <<features-uniformBufferStandardLayout,
    pname:uniformBufferStandardLayout>> feature is only required when the
    extension defining it is supported (internal merge request 3341).
  * Bring scripts into closer sync with OpenXR, mainly through conversion of
    comments to docstrings where appropriate, and add gen-scripts-docs.sh
    (internal merge request 3324).
  * Correct pname:maxDrawMeshTasksCount to 2^16^-1 in the <<limits-required,
    Required Limits>> table (internal merge requests 3361).

New Extensions

  * `<<VK_IMG_format_pvrtc>>` (public issue 512).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/194a7f4d0d552e78d6f1a2fa2ae0ddbe0215090a

Extensions:
- VK_IMG_format_pvrtc: VK_IMG_format_pvrtc provides additional texture compression functionality specific to Imagination Technologies PowerVR Texture compression format (called PVRTC).

JeGX

Quote
Change log for September 15, 2019 Vulkan 1.1.123 spec update:

  * Update release number to 123.

Github Issues:

  * Add missing aspect mask descriptions to elink:VkImageAspectFlagBits
    (public pull request 1029).
  * Modify validity generator script to not check validity of ignored values
    in same-parent valid usage statements (public pull request 1030).
  * Make slink:VkDescriptorUpdateTemplateCreateInfo::pname:descriptorSetLayout
    `noautovalidity` in `vk.xml` (public pull request 1031).
  * Fix footnote markup in the <<vkGetDeviceProcAddr behavior>> table
    (public pull request 1034).

Internal Issues:

  * Require that <<interfaces-builtin-variables-sgs, code:SubgroupSize>> be
    a power of two (internal issue 1499).
  * Clarify that shaderFloat64 and shaderInt64 enable all storage classes,
    while shaderFloat16, shaderInt8, and shaderInt16 only enable
    non-interface storage classes. in the <<features-shaderFloat64>>,
    <<features-shaderInt64>>, and <<features-shaderInt16>> descriptions and
    for slink:VkPhysicalDeviceShaderFloat16Int8FeaturesKHR (internal issue
    1582).
  * Fix broken asciidoctor conditional logic in the
    <<spirvenv-module-validation, Validation Rules within a Module>>
    section, and add style guide language to help avoid this problem in the
    future (internal issue 1808).
  * Modify VUID assignment script to use the first API include in a block as
    part of the VUID name rather than the last one, so the VUID is based on
    the promoted API name (internal issue 1809).
  * Cleanup string descriptions to consistently refer to "`null-terminated
    UTF-8`" strings (internal issue 1813).
  * Clarify the purpose of the
    slink:VkPhysicalDeviceLimits::ptext:maxDescriptorSet* limits (internal
    merge request 3357).
  * Fix the slink:VkPhysicalDeviceRayTracingPropertiesNV limits for
    pname:maxGeometryCount, pname:maxInstanceCount, and
    pname:maxTriangleCount in the <<limits-required, Required Limits>>
    section (internal issue 3372).
  * Update SPIR-V image op sign-matching rules in the
    <<spirvenv-module-validation, Validation Rules within a Module>>
    section, the <<formats-numericformat>> table, and the
    <<interfaces-resources-descset, Descriptor Set Interface>> section
    (internal spirv/SPIR-V issue 332).

New Extensions

  * `<<VK_KHR_shader_subgroup_extended_types>>`
  * `<<VK_GOOGLE_user_type>>`

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/c5261decf68cb2ef8cd934b8a3e4824bfde81cda

New extensions:
- VK_KHR_shader_subgroup_extended_types
- VK_GOOGLE_user_type

JeGX

Quote
Change log for October 6, 2019 Vulkan 1.1.124 spec update:

  * 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>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/22a5a1459fbe8be546079525c4c9d50bfc20b30b

New extensions:
- VK_KHR_shader_clock
- VK_KHR_timeline_semaphore

JeGX

Quote
Change log for October 13, 2019 Vulkan 1.1.125 spec update:

  * Update release number to 125.

Github Issues:

  * Allow slink:VkRenderPassFragmentDensityMapCreateInfoEXT to extend
    slink:VkRenderPassCreateInfo2KHR in `vk.xml` (public issue 1027).
  * Fix markup in `<<VK_EXT_external_memory_dma_buf>>` appendix (public pull
    request 1051).
  * Update .gitignore (public pull request 1052).

Internal Issues:

  * Disallowed slink:VkEvent from participating in queue family ownership
    transfers in the <<devsandqueues-index, Queue Family Index>> section
    (internal issue 1691).
  * Relax language describing default NT handle access rights for
    slink:VkExportMemoryWin32HandleInfoKHR and
    slink:VkExportSemaphoreWin32HandleInfoKHR (internal issue 1838).
  * Fix markup for slink:VkDeviceCreateInfo valid usage statement 00372 to
    remove imbedded asciidoctor conditionals by splitting it into two VUs
    (internal issue 1846).
  * Clarify lifetime of samplers used as immutable samplers in
    slink:VkDescriptorSetLayoutBinding (internal issue 1849).
  * Add a valid usage statement prohibiting flink:vkCmdBeginQuery on
    timestamp queries (internal issue 1851).
  * Correct some <<Precision of GLSL.std.450 Instructions, SPIR-V
    instruction precisions>> (internal merge request 3391).
  * Fix a typo in flink:vkQueueBindSparse valid usage statement 03245
    (internal merge request 3394).

New Extensions

  * `<<VK_KHR_spirv_1_4>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/a5b10770a313a4b1fcf74645c6041c6090630085

New extensions:
- VK_KHR_spirv_1_4

JeGX

Quote
Change log for October 21, 2019 Vulkan 1.1.126 spec update:

  * Update release number to 126

Github Issues:

  * Update the elink:VkAccessFlagBits etext:VK_ACCESS_MEMORY_* flags
    definition to make clear that ename:VK_ACCESS_MEMORY_READ_BIT and
    ename:VK_ACCESS_MEMORY_WRITE_BIT are meant to be equivalent to setting
    all applicable etext:READ and etext:WRITE access flags, and update the
    <<synchronization-access-types-supported, supported access types>> table
    accordingly (public pull request 1014).
  * Remove misleading NOTE in the <<synchronization-dependencies-chains>>
    section (public pull request 1048).
  * Clarify the memory mapping NOTE about invalidation described for
    flink:vkInvalidateMappedMemoryRanges (public pull request 1049).
  * Fix label for flink:vkCmdWaitEvents VUID 02803 (public pull request
    1056).
  * Styleguide fixes to several NOTES in the <<synchronization>> chapter
    (public pull request 1057).
  * Markup fix to <<features-features-timelineSemaphore>> section (public
    pull request 1058).
  * Convert some external links to `https` protocol (public pull request
    1064).
  * Remove unsupported nested links inside table captions (public pull
    request 1067 + followon tweak to make 'allchecks' target pass).

Internal Issues:

  * Restrict the SPIR-V code:Invariant decoration to only be used with
    code:Output variables in the <<spirvenv-module-validation, Validation
    Rules within a Module>> section (internal issue 1832).
  * Clarify that the <<features-independentResolve, independentResolve>>
    feature implies support for the <<features-independentResolveNone,
    independentResolveNone>> feature (internal issue 1848).
  * Clarify self-contradictory language for slink:VkSubpassDescription to
    say that resolves only happen within the render area (internal issue
    1850).
  * Add valid usage statements for slink:VkMemoryAllocateInfo and
    corresponding language to elink:VkExternalMemoryFeatureFlagBitsKHR to
    restrict implementations and applications from using both an external
    host memory allocation and dedicated allocation (internal merge request
    3375).

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/90add81fa4bf15fceee9a4e015cc07c13f7b00a9

JeGX

Quote
Change log for November 4, 2019 Vulkan 1.1.127 spec update:

  * Update release number to 127

Github Issues:

  * Consistently use the feature name pname:pipelineExecutableInfo as found
    in `vk.xml` and the generated header files, instead of
    pname:pipelineExecutableProperties as sometimes used in the
    specification text (public issue 1061).
  * Clarify the definition of the code:PrimitiveId returned by a
    `<<VK_NV_ray_tracing>>` shader (public issue 1068).

Internal Issues:

  * Remove unused `draw_renderpass_validation.txt` valid usage text
    (internal issue 1869).
  * Require <<features-features-timelineSemaphore, pname:timelineSemaphore>>
    if the `<<VK_KHR_timeline_semaphore>>` extension is supported (internal
    issue 1873).
  * Fix typos in slink:VkBindBufferMemoryInfo valid usage statement 02791
    and various slink:VkSparseMemoryBind VUs (internal merge request 3411).
  * Minor non-semantic markup and diagram fixes (internal merge request
    3417).
  * Clarify that <<interfaces-iointerfaces-locations, Location>> values are
    physical slots, not a virtual table that just imposes an overall maximum
    on the number of locations that can be used (internal merge request
    3426).
  * Add links to GLSL specs from the `<<VK_KHR_shader_clock>>` appendix, as
    well as expected mappings for GLSL builtins (internal merge request
    3429).

New Extensions

  * `<<VK_KHR_separate_depth_stencil_layouts>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/fa497b29d87078e1fee7372e369e9a1a788d6358

New extension:
- VK_KHR_separate_depth_stencil_layouts

JeGX

Quote
Change log for November 18, 2019 Vulkan 1.1.128 spec update:

  * Update release number to 128

Github Issues:

  * Fix valid usage condition for
    flink:vkAllocationMemory::pname:pAllocateInfo (public issue 1032).
  * Change explicit valid usage statements for queue transfer operations in
    flink:vkCmdWaitEvents and flink:vkCmdPipelineBarrier, and corresponding
    language in the <<synchronization-queue-transfers-release>> section, to
    incorporate access masks and clarify when queue transfer ops occur
    (public pull request 1046).
  * Ignore disabled bits in valid usage statements (public pull request
    1062).
  * Fix some broken HTML links (public pull request 1063).
  * Change ename:VK_PIPELINE_CREATE_DISPATCH_BASE to an alias of new token
    ename:VK_PIPELINE_CREATE_DISPATCH_BASE_BIT, to follow the naming
    conventions for bitmasks (public issue 1075).

Internal Issues:

  * Add valid usage statement to flink:vkQueueSubmit for attempted use of a
    resource currently not available for use (internal issue 1751).
  * Make it invalid for an implementation to return anything but
    ename:VK_SUCCESS for the flink:vkFreeDescriptorSets and
    flink:vkResetDescriptorPool commands (internal issue 1781).
  * Add a note clarifying the relationship between
    code:SubgroupLocalInvocationId and code:LocalInvocationId or
    code:LocalInvocationIndex to the <<interfaces-builtin-variables-sgli,
    code:SubgroupLocalInvocationId>> description (internal issue 1810).
  * Add valid usage statements for scissor regions to
    slink:VkPipelineViewportStateCreateInfo based on similar statements for
    flink:vkCmdSetScissor, and generalize all these VUs to cover each
    element of the pname:pScissors array (internal issue 1861).
  * Fix the basis matrix for <<textures-texel-cubic-filtering, Texel Cubic
    Filtering>> (internal issue 1878).
  * Make the
    slink:VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT::pname:pNext
    member non-const, like other feature structures (internal issue 1880).
  * Document that aggregate load/store may access padding bytes in the
    <<memory-model-memory-location, Memory Location>> appendix (internal
    cross-api/memory-model issue 113).
  * Clarify in the description of elink:VkDescriptorBindingFlagBitsEXT that
    ename:VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT descriptors allow
    for updating different descriptors in the same set at the same time on
    multiple threads (internal merge request 3419).
  * Clarify that resolve attachments don't need to be compatible in the
    <<renderpass-compatibility, Render Pass Compatibility>> section
    (internal merge request 3422).
  * Add Visual Studio folders to `.gitignore` (internal merge request 3450).
  * Add language to
    slink:sname:VkPipelineCoverageModulationStateCreateInfoNV documenting
    that coverage modulation has no effect when using the
    ename:VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV reduction mode, clarifying
    an interaction with `<<VK_NV_coverage_reduction_mode>>` (internal merge
    request 3456).

New Extensions

  * `<<VK_KHR_performance_query>>`

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/d4b6925d02d0c917403fb8743c0289dd67b027f1

New Extension:
- VK_KHR_performance_query

JeGX

Quote
Change log for November 25, 2019 Vulkan 1.1.129 spec update:

  * Update release number to 129

Github Issues:

  * Rename "`pixel shaders`" to "`fragment shaders`" (public issue 1082).
  * Fix some markup in external semaphore extension (public pull request
    1083).
  * Fix styleguide em-dash example (public pull request 1088).
  * Update `.gitignore` to include some additional static refpages (public
    pull request 1089).
  * Restructure query language in <<wsi, Window System Integration (WSI)>>
    chapter - split into sections, reordered orphaned paragraphs, simplify
    language (public pull request 1090).

Internal Issues:

  * Remove NVIDIA contributors from `<<VK_KHR_performance_query>>` (internal
    merge request 3481).

New Extensions

  * `<<VK_KHR_buffer_device_address>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/2735ce8edb84539d210651664719edd66ace57d8

New extension:
- VK_KHR_buffer_device_address
Quote
This extension allows the application to query a 64-bit buffer device
address value for a buffer, which can be used to access the buffer memory
via the code:PhysicalStorageBuffer storage class in the
https://github.com/KhronosGroup/GLSL/blob/master/extensions/ext/GLSL_EXT_buffer_reference.txt[`GL_EXT_buffer_reference`]
GLSL extension and
{spirv}/KHR/SPV_KHR_physical_storage_buffer.html[`SPV_KHR_physical_storage_buffer`]
SPIR-V extension.

This extension also allows opaque addresses for buffers and memory objects
to be queried and later supplied by a trace capture and replay tool, so that
addresses used at replay time match the addresses used when the trace was
captured.
To enable tools to insert these queries, new memory allocation flags must be
specified for memory objects that will be bound to buffers accessed via the
code:PhysicalStorageBuffer storage class.

JeGX

Quote
Change log for December 9, 2019 Vulkan 1.1.130 spec update:

  * Update release number to 130

Github Issues:

  * Mark slink:VkPipelineExecutableInternalRepresentationKHR as
    `returnedonly` in `vk.xml` (public pull request 1092).
  * Use 'slink:' in autogenerated valid usage statements instead of 'sname:'
    (public pull request 1093).
  * Split flink:vkGetQueryPoolResults VU statement 00815, which had
    disallowed internal asciidoctor conditionals into two (public issue
    1094).
  * Minor markup and editing fixes (public pull request 1099).
  * Hide outdated valid usage statement when not building with timeline
    semaphore extension (public pull request 1121).
  * Add `<<VK_NV_glsl_shader>>` deprecation note (public pull request 1125).
  * Add SPV and GLSL links to `<<VK_KHR_multiview>>` (public pull request
    1128).

Internal Issues:

  * Clarify and consistently refer to the shader interface matching rules in
    the <<interfaces, Shader Interfaces>> chapter (internal issue 1067).
  * Clarify that inner array dimensions can't be sized with specialization
    constants in the <<spirvenv-module-validation, Validation Rules within a
    Module>> section (internal issue 1739).
  * Use consistent markup for nested access (members, array references,
    pointers) to structure members and function parameters (internal issues
    503, 1765).
  * Make slink:VkDeviceQueueInfo2::flags optional in `vk.xml` to remove an
    inappropriate valid usage statement (internal issue 1805).
  * Fix API name assignment for valid usage blocks in `scripts/reflow.py`
    (internal issue 1809).
  * Make spec language more internally consistent by fixing remaining cases
    where the term "`an instance of (structurename)`" was used, and
    expanding the style guide rules for describing pname:pNext chains along
    with corresponding edits it (internal issue 1814).
  * Disallow code:Workgroup memory and execution scope and code:Workgroup
    storage class in all but compute, mesh, and task shaders in the
    <<spirvenv-module-validation, Validation Rules within a Module>>
    section. There is an exception for code:Workgroup execution scope in
    tessellation control shaders because we do not have a more appropriate
    scope for patch barriers (internal issue 1905).
  * Restore 'Promoted to Vulkan 1.1 Core' comments in extension appendices,
    which were accidentally removed in spec revision 1.1.129 (internal issue
    1914).
  * Add some minor markup fixes as well as new valid usage statements for
    slink:VkAttachmentDescription, slink:VkAttachmentDescription2KHR, and
    slink:VkAttachmentReference2KHR (internal merge request 3493).

New Extensions

  * `<<VK_EXT_tooling_info>>`

Link: https://github.com/KhronosGroup/Vulkan-Docs/commit/86113f72290ca5998fcae798ee180bf587eca2a0


New extension:
- VK_EXT_tooling_info
Quote
When an error occurs during application development, a common question is
"What tools are actually running right now?" This extension adds the ability
to query that information directly from the Vulkan implementation.

Outdated versions of one tool might not play nicely with another, or perhaps
a tool is not actually running when it should have been.
Trying to figure that out can cause headaches as it's necessary to consult
each known tool to figure out what's going on - in some cases the tool might
not even be known.

Typically, the expectation is that developers will simply print out this
information for visual inspection when an issue occurs, however a small
amount of semantic information about what the tool is doing is provided to
help identify it programmatically.
For example, if the advertised limits or features of an implementation are
unexpected, is there a tool active which modifies these limits? Or if an
application is providing debug markers, but the implementation is not
actually doing anything with that information, this can quickly point that
out.

JeGX

Quote
Change log for January 15, 2020 Vulkan 1.2.131 spec update:

  * Vulkan 1.2 initial release. Update release number to 131 for this
    update. The patch number will be used for all Vulkan 1.x spec updates,
    and continue to increment continuously from the previous Vulkan 1.1.130
    update.

Github Issues:

  * Use the attributes {prime}, {YCbCr}, and {RGBprime} for better markup of
    prime symbols, and ease of changing the markup for the commonly used
    color format names (public issue 636).
  * Expand the <<extendingvulkan-extensions-extensiondependencies, Extension
    Dependencies>> section to acknowledge that extension dependencies are
    usually, but not always satisfied by promoted versions of the
    dependencies, and point to the extension and version appendices for more
    information (public issue 1085).
  * Clarify the <<features-shaderStorageImageExtendedFormats,
    pname:shaderStorageImageExtendedFormats>> feature and add corresponding
    formats to the <<formats-mandatory-features-2byte>>,
    <<formats-mandatory-features-10bit>>,
    <<formats-mandatory-features-16bit>>, and
    <<formats-mandatory-features-64bit>> tables (public pull request 1098).
  * Fix issue 2 wording in the `<<VK_KHR_surface>>` appendix (public pull
    request 1100).
  * Fix valid usage statements for
    slink:VkSwapchainCreateInfoKhr::pname:minImageCount interactions with
    `<<VK_KHR_shared_presentable_image>>` (public pull request 1101).
  * Change the etext:VK_QUERY_SCOPE_* tokens in the
    slink:VkPerformanceCounterScopeKHR to aliases of new
    etext:VK_PERFORMANCE_COUNTER_SCOPE_* tokens, following the naming
    conventions for enumerants (public issue 1130).
  * Move `NV` extension pipe stages in elink:VkShaderStageFlagBits so they
    are not included in enmae:VK_SHADER_STAGE_ALL_GRAPHICS (public pull
    request 1133).
  * Clarify the introduction of the "`Surface Queries`" section of the
    <<wsi, Window System Integration>> chapter (public pull request 1135).
  * Fix macros that consume codelike text like pname:foo\->bar (public pull
    request 1149).

Internal Issues:

  * Add a new <<fundamentals-errorcodes, error code>>,
    ename:VK_ERROR_UNKNOWN, that can be returned by any function that has
    error returns (internal issue 1654).
  * Remove the `<<VK_EXT_filter_cubic>>` requirement to cubic filter the
    formats etext:*USCALED_PACKED32, etext:*SSCALED_PACKED32,
    etext:*UINT_PACK32, and etext:*SINT_PACK32 in the
    <<features-required-format-support, Required Format Support>> section
    (internal issue 1934).
  * Add a missing valid usage statement for
    `<<VK_KHR_buffer_device_address>>` to slink:VkBindBufferMemoryInfo,
    based on a similar statement for flink:vkBindBufferMemory (internal
    merge request 3512).
  * Fix some 'name:' macros to the correct 'pname:' (internal merge request
    3529).
  * Changes to script tools to stay relatively aligned with OpenXR scripts
    (internal merge request 3530).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/ec1c5a0f6a10309a10cb636c67ba4b085ac437d4

More on Vulkan 1.2: Vulkan 1.2 Specifications Released

JeGX

Quote
Change log for January 20, 2020 Vulkan 1.2.132 spec update:

  * Update release number to 132 for this update.

Github Issues:

  * Move and reword a NOTE in the <<extendingvulkan-extensions, Extensions>>
    section (public pull request 1131).
  * Change redundant description of application error when using
    flink:vkMapMemory into a non-normative NOTE (public pull request 1143).
  * Remove redundant valid usage statement for flink:vkCmdExecuteCommands
    (public pull request 1151).
  * Remove redundant command buffer
    ename:VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT language in
    flink:vkCmdExecuteCommands valid usage statements (public pull request
    1153).
  * Add flink:vkBeginCommandBuffer valid usage statement to prevent using a
    primary command buffer with both the
    ename:VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT and
    ename:VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT flags (public pull
    request 1154).
  * Add slink:VkRenderPassBeginInfo valid usage statements for
    pname:renderArea (public pull request 1159).
  * Add missing valid usage statements for flink:vkCmdBeginRenderPass when
    `VK_KHR_separate_depth_stencil_layouts` is enabled (public issue 1470).

Internal Issues:

  * Clarify the definition of "`transfer commands`" for
    <<synchronization-pipeline-stages-transfer,
    ename:VK_PIPELINE_STAGE_TRANSFER_BIT>> (internal issue 816).
  * Clarify VK_ATTACHMENT_STORE_OP_DONT_CARE and reorder render pass chapter
    (internal issue 1098).
  * Clarify that <<pipelines-dynamic-state, Dynamic State>> can be set
    before pipeline bind, and update valid usage statements accordingly
    (internal issue 1624).
  * Clarify the behavior of floating-point divide by zero in the
    <<spirvenv-precision-operation, Precision and Operation of SPIR-V
    Instructions>> section (internal issue 1669).
  * Add a valid usage statement to flink:vkCmdResetQueryPool which allows
    not calling flink:vkCmdEndQuery if a prior flink:vmCmdResetQuery command
    was called (internal issue 1700).
  * Refactor specification of shader scopes into the new <<shaders-scope,
    Scope>> section, and modify other references to this language
    accordingly. Also describe quad invocation groups properly, with
    derivative and quad group operations referencing the description, and
    call out helper invocations as being able to become spontaneously
    inactive. Simplify parts of the texturing chapter accordingly (internal
    issues 1824, 1884, 1885, 1911).
  * Stop claiming that semaphore signals are ordered between different queue
    commands in the <<synchronization-signal-operation-order>> section
    (internal merge request 3542).
  * Move a valid usage statement from slink:VkBindImagePlaneMemoryInfo to
    flink:vkBindImageMemory2, where it can be determined (internal merge
    request 3548).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/3a774a05786d65cc18bc58694d6bfe24f5b21d69

JeGX

Quote
Change log for February 15, 2020 Vulkan 1.2.133 spec update:

  * Update release number to 133 for this update.

Github Issues:

  * Clarify language describing the <<commandbuffers-lifecycle, command
    buffer lifecycle>> (public pull request 1152).
  * Add anchor handles to chapters and VUID statements in the HTML outputs
    (public pull request 1157).
  * Update declaration of flink:vkCmdDrawIndexedIndirectCountAMD to alias
    the core function rather than the KHR extension function (public pull
    request 1165).
  * Remove redundant NOTE discussing
    ename:VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT after the description
    of slink:VkCommandBufferInheritanceInfo.txt (public pull request 1167).
  * Reserved vendor ID for Codeplay (public pull request #1167).

Internal Issues:

  * Restrict flag bits to bit positions 0..30. Add language to the
    <<fundamentals-validusage-flags, Valid Usage for Flags>> section
    expressing the restriction; to the registry documentation where the
    `bitpos` attribute is defined; and finally, add a test to the generator
    scripts that warns of bits 31 and higher being used (internal issue
    1945).
  * Clarify dynamic indexing of sampler objects in the
    <<interfaces-resources-descset, Descriptor Set Interface>> section, to
    be controlled by the same feature as sampled images (internal issue
    1951).
  * Make the effect of query reset commands requiring multiple passes to
    complete explicit, by disallowing resets of the same query from the same
    primary command buffer in the description of flink:vkCmdResetQueryPool
    and the valid usage statements for ftext:vkCmdBeginQuery* (internal
    issue 1965).
  * Update interaction between elink:VkFormatFeatureFlagBits affecting
    slink:VkSamplerYcbcrConversionCreateInfo::pname:forceExplicitReconstruction
    (internal merge request 3533).
  * Generate implicit pname:sType-unique valid usage statements from
    `validitygenerator.py` even for pname:pNext chains with only a single
    valid structure type, to enable validation layers work (internal merge
    request 3534).
  * Clean up wording of some flink:vkBindImageMemory valid usage statements
    (internal merge request 3547).
  * Mark the `VK_EXT_shader_subgroup_vote` and
    `VK_EXT_shader_subgroup_ballot` as deprecated in `vk.xml` (internal
    merge request 3558).
  * Tighten slink:VkSamplerYcbcrConversionCreateInfo::pname:chromaFilter
    valid usage restriction to be ename:VK_FILTER_NEAREST instead of
    ename:VK_FILTER_LINAER, now that other filters exist (internal merge
    request 3561).
  * Add valid usage statements to slink:VkCommandPoolCreateInfo and
    slink:VkDeviceQueueCreateInfo requiring that the corresponding
    ename:VK_COMMAND_POOL_CREATE_PROTECTED_BIT and
    ename:VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT not be set if the protected
    memory feature is not enabled. Previously this restriction was described
    for the elink:VkCommandPoolCreateFlagBits and
    elink:VkDeviceQueueCreateFlagBits types containing those flags, but not
    in valid usage statements (internal merge request 3563).
  * Fix conditional markup in the <<shaders-scope-device>> and
    <<shaders-scope-queue-family>> sections to apply to Vulkan 1.2, as well
    as `VK_KHR_vulkan_memory_model` (internal merge request 3570).
  * Add performance queries to the list in the introduction of the
    <<supported query types, queries>> chapter (internal merge request
    3577).

New Extensions

  * `<<VK_KHR_shader_non_semantic_info>>`

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/c31cf1823ace0812c2fcc4681714fbfe5f067b09

New extension:
- VK_KHR_shader_non_semantic_info

JeGX

Quote
Change log for March 6, 2020 Vulkan 1.2.134 spec update:

  * Update release number to 134 for this update.

Github Issues:

  * Fix flink:vkGetPhysicalDeviceToolPropertiesEXT implicit array valid
    usage statements, rewrite for consistency, and explicitly state lifetime
    of retrieved results (public pull request 1148).
  * Change use of "`happens before`" to glossary term "`happens-before`"
    (public pull request 1170).
  * Use glossary terms "`release operation`" / "`acquire operation`" instead
    of similar colloquial language (public pull request 1171).
  * Fix minor spelling errors and duplicated words (public pull request
    1174).
  * Remove duplicate "`to`" word (public pull request 1176).
  * Rephrase description of signaling / unsignaling for slink:VkEvent
    (public pull request 1179).
  * Update asciidoctor extension handling of C arrow operator to avoid need
    for escaping it in custom macros, and corresponding fixes to markup in
    the spec and to the style guide (public pull request 1186).
  * Move layout transition NOTE in the
    <<synchronization-image-layout-transitions, Image Layout Transitions>>
    section below the corresponding normative paragraph (public pull request
    1190).
  * Change the parent handle types of slink:VkDisplayKHR and
    slink:VkDisplayModeKHR in `vk.xml` (public pull request 1194).
  * Add missing `len` attribute for
    flink:vkQueueSignalReleaseImageANDROID::pname:pWaitSemaphores parameter
    in `vk.xml` (public pull request 1196).

Internal Issues:

  * Link to HTML preview of `SPV_KHR_non_semantic_info` link in the
    `<<VK_KHR_shader_non_semantic_info>>` appendix, instead of asciidoctor
    source document (internal merge request 3614).
  * Improve registry schema documentation description of allowed <enum> tags
    inside <remove> tags (internal merge request 3614).

  * Clarify behavior when reading or writing image formats with padding
    ("`X`" components) in the "`Common Operation`" section of the <<copies>>
    chapter, and that padding components are unused in the elink:VkFormat
    description of such formats (internal issue 1122).
  * Clarify that flink:vkGetDeviceProcAddr can be used for device-level
    commands from instance extensions (internal issue 1960).
  * Add a note to the <<primsrast-lines-bresenham, Bresenham Line Segment
    Rasterization>> section clarifying that line rasterization does not
    depend on sample locations (internal issue 1855).
  * Add a new header macro dlink:VK_HEADER_VERSION_COMPLETE which provides
    the complete version (major, minor, and patch/release) of the Vulkan
    headers at compile time, and document the intended use cases for this
    macro (internal issue 1990).
  * Remove `optional` attribute from
    slink:VkDebugUtilsObjectNameInfoEXT::pname:pObjectName in `vk.xml`,
    making the string required (internal issue 2002).
  * Add a missing `structextends` attribute for
    slink:VkQueryPoolCreateInfoINTEL in `vk.xml` (internal merge request
    3599).
  * Clarify when implicit subpass dependencies are introduced in the
    definition of slink:VkSubpassDependency (internal merge request 3603).
  * Update several valid usage statements for flink:vkCmdResetQueryPool,
    flink:vkCmdBeginQuery, and flink:vkCmdBeginQueryIndexedEXT which
    interact with the presence of flink:vkCmdResetQueryPool commands in a
    command buffer, and restrict the VUs to performance queries (internal
    merge request 3604).
  * Simplify a hard-to-parse sentence in the <<textures-RGB-sexp, RGB to
    Shared Exponent Conversion>> section (internal merge request 3606).
  * Add a `pdfwidth` attribute to markup for images inside tables, to work
    around a crash occurring in recent versions of asciidoctor-pdf (internal
    merge request 3626).

New Extensions

  * `<<VK_QCOM_render_pass_transform>>`

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/b27536168823d5e8b025fc5622eab7df54008589

New extension:
- VK_QCOM_render_pass_transform

Quote
VK_QCOM_render_pass_transform

Mobile devices can be rotated and mobile applications need to render
properly when a device is held in a landscape or portrait orientation.
When the current orientation differs from the device's native orientation, a
rotation is required so that the "up" direction of the rendered scene
matches the current orientation.

If the Display Processing Unit (DPU) doesnt natively support rotation, the
Vulkan presentation engine can handle this rotation in a separate
composition pass.
Alternatively, the application can render frames "pre-rotated" to avoid this
extra pass.
The latter is preferred to reduce power consumption and achieve the best
performance because it avoids tasking the GPU with extra work to perform the
copy/rotate operation.

Unlike OpenGL ES, the burden of pre-rotation in Vulkan falls on the
application.
To implement pre-rotation, applications render into swapchain images
matching the device native aspect ratio of the display and "pre-rotate" the
rendering content to match the device's current orientation.
The burden is more than adjusting the Model View Projection (MVP) matrix in
the vertex shader to account for rotation and aspect ratio.
The coordinate systems of scissors, viewports, derivatives and several
shader built-ins may need to be adapted to produce the correct result.

It is difficult for some game engines to manage this burden; many chose to
simply accept the performance/power overhead of performing rotation in the
presentation engine.

This extension allows applications to achieve the performance benefits of
pre-rotated rendering by moving much of the above-mentioned burden to the
graphics driver.

JeGX

Quote
Change log for March 17, 2020 Vulkan 1.2.135 spec update:

  * Update release number to 135 for this update.

Github Issues:

  * Add missing dependencies of slink:VkExportMemoryWin32HandleInfoKHR on
    slink:VkExportMemoryAllocateInfo in the slink:VkMemoryAllocateInfo
    pname:pNext chain; slink:VkExportFenceWin32HandleInfoKHR on
    slink:VkExportFenceCreateInfo in the slink:VkFenceCreateInfo pname:pNext
    chain; and slink:VkExportSemaphoreWin32HandleInfoKHR on
    slink:VkExportSemaphoreCreateInfo in the slink:VkSemaphoreCreateInfo
    pname:pNext chain (public issue 1095).
  * Update the <<spirvenv-module-validation, Validation Rules within a
    Module>> section of the SPIR-V environment appendix to allow the
    code:PhysicalStorageBuffer64 addressing model (public issue 1199).
  * Fix markup in parameters section of
    flink:vkGetPhysicalDeviceXcbPresentationSupportKHR (public pull request
    1201).
  * Amend rules in the <<extensions-vendor-id, Registering a Vendor ID with
    Khronos>> section of the style guide to allow other Khronos APIs such as
    OpenCL to reserve vendor IDs here so they can be shared with those APIs
    (public KhronosGroup/OpenCL-Docs pull request 203).

Internal Issues:

  * Clarify layer loading order for slink:VkInstanceCreateInfo and in the
    <<extendingvulkan-layers, Layers>> chapter following the specification
    of slink:VkLayerProperties (internal issue 1986).
  * Simplify markup for SPIR-V versions required by different Vulkan
    versions in the <<spirvenv, Vulkan Environment for SPIR-V>> appendix
    (internal issue 2011).
  * Rename sname:VkQueryPoolCreateInfoINTEL to
    slink:VkQueryPoolPerformanceQueryCreateInfoINTEL in the
    `<<VK_INTEL_performance_query>>` extension (internal issue 2022).
  * Add ename:VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT to
    elink:VkValidationFeatureEnableEXT to specify that layers will process
    code:debugPrintfEXT operations (internal issue 2023).
  * Fix conflicting language in slink:VkSamplerYcbcrConversionCreateInfo
    valid usage statement 01653 (internal merge request 3629).
  * Add missing valid usage statement for slink:VkSparseImageMemoryBindInfo
    to require slink:VkImage objects created with the
    ename:VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT flag set (internal merge
    request 3633).
  * Remove redundant valid usage statement 00122 from flink:vkCmdCopyImage
    (internal merge request 3643).
  * Fix several places where `VULKAN_1_1` was used in asciidoctor
    conditional markup instead of `VK_VULKAN_1_1` (internal merge request
    3654).
  * Fix conditional markup around slink:VkImageViewCreateInfo valid usage
    statement 01018 to ensure it doesn't overlap a similar valid usage
    statement written for another combination of enabled extensions and
    versions (internal merge request 3655).
  * Remove redundant valid usage statement from flink:vkCmdCopyImage that
    was already covered by statements for slink:VkImageCopy. Eventually this
    will be inverted so the statements are located with flink:vkCmdCopyImage
    but that requires more work and is deferred (internal merge request
    3656).
  * Clarify wording of slink:VkImageMemoryBarrier valid usage statement
    01671 and add a missing statement (internal merge request 3657).
  * Minor fixes to the style guide to bring it up to date with respect to
    the asciidoctor client, assignment of valid usage ID tags, and proper
    placement of valid usage statements (internal merge request 3662).
  * Add missing valid usage statements to slink:VkSubpassDescription2 based
    on comparable statements for slink:VkSubpassDescription (internal merge
    request 3663).

New Extensions

  * Ray Tracing package of extensions, including
  ** `<<VK_KHR_deferred_host_operations>>`
  ** `<<VK_KHR_pipeline_library>>`
  ** `<<VK_KHR_ray_tracing>>`
  * `<<VK_EXT_pipeline_creation_cache_control>>`
  * `<<VK_NV_device_diagnostics_config>>`
  * `<<VK_NV_device_generated_commands>>` (replacing
    `VK_NVX_device_generated_commands`, which was an experimental vendor
    extension and has been removed from the Specification and `vk.xml`).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/18caa8e0b823981992e6df876ec56d4cfa8bc89f

New Extensions:
- VK_KHR_deferred_host_operations
- VK_KHR_pipeline_library
- VK_KHR_ray_tracing
- VK_EXT_pipeline_creation_cache_control
- VK_NV_device_diagnostics_config
- VK_NV_device_generated_commands



JeGX

Quote
Change log for March 24, 2020 Vulkan 1.2.136 spec update:

  * Update release number to 136 for this update.

Github Issues:

  * Generate per-extension refpages from the extension appendices in the
    specification instead of the old, minimal generated refpages, and update
    the registry index to point to these refpages instead of the
    specification (public issue 1195, internal issue 1999).
  * Rename ename:VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL to
    ename:VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL
    to match the similar renaming of sname:VkQueryPoolCreateInfoINTEL to
    slink:VkQueryPoolPerformanceQueryCreateInfoINTEL (public issue 1207,
    internal issue 2048).

Internal Issues:

  * Add a new <<resources-sampler-ycbcr-conversion-format-features, Sampler
    Ycbcr Conversion Format Features>> section, and update
    elink:VkFormatFeatureFlagBits and valid usage statements for
    slink:VkSamplerCreateInfo and slink:VkSamplerYcbcrConversionCreateInfo
    to refer to it (internal issue 1963).
  * Comment out reserved but unused ename:VK_ACCESS_RESERVED_31_BIT_KHR to
    avoid generator script warnings (internal issue 2016).
  * Fix some `<<VK_KHR_ray_tracing>>` valid usage IDs that were broken in
    the 1.2.135 update (internal issue 2044).
  * Remove `const` qualifier from
    sname:VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV::pname:pNext
    in `vk.xml` (internal issue 2047).
  * Remove `flowRoot` elements supported only by Inkscape from some of the
    images, and update a couple to 96 DPI from 90 DPI due to current
    Inkscape's insistence. This reduces warnings from prawn-svg during PDF
    builds (internal issue 2053).
  * Remove reference in the <<devsandqueues-lost-device, Lost Device>>
    section to a non-existent list of functions returning
    ename:VK_ERROR_DEVICE_LOST (internal merge request 3667).
  * Add valid usage statements to slink:VkImageViewCreateInfo for cube and
    cube array image view (internal merge request 3682).
  * Remove redundant valid usage statement 00228 from flink:vkCmdBlitImage
    (internal merge request 3684).
  * Document the Khronos-provided Docker image, whose use is recommended
    when building documents and generated files from this repository
    (internal merge request 3686).
  * Rename ename:VK_PIPELINE_COMPILE_REQUIRED_EXT from
    ename:VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT and add an alias from the
    old name, since it is not actually an error code. Add it to the
    `successcodes` attributes of appropriate commands in `vk.xml` (internal
    merge request 3687).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/9d2243151f9d7a1ed0b37424ab74c1416c7d903c

JeGX

Quote
Change log for April 06, 2020 Vulkan 1.2.137 spec update:

  * Update release number to 137 for this update.

Github Issues:

  * Incorporate several changes to the specification build process and HTML
    load-time scripts which pre-render KaTeX math, pre-fetch fonts, and
    perform several other optimizations which can significantly improve load
    time for the single-page HTML specification. In our internal evaluation
    these changes appear to primarily help when using Chrome or Chromium,
    with smaller improvements for Firefox and Safari. Speedups seem more
    significant on Linux, Windows, and Android platforms, while MacOS
    browsers may benefit less (public pull requests 702, 704, and 708).
  * Clarify that code:OpVariable is decorated with code:Location, not
    code:OpTypeStruct in the <<interfaces-iointerfaces-locations, Location
    Assignment>> section (public issue 1203).
  * Add a NOTE about the WSI origin location in the description of
    flink:vkQueuePresentKHR (public pull request 1208).
  * Add the `null-terminated` attribute to
    slink:VkPerformanceValueDataINTEL::pname:valueString in `vk.xml` (public
    pull request 1209).
  * Mark slink:VkPhysicalDeviceVulkan11Properties and
    slink:VkPhysicalDeviceVulkan12Properties structures as `returnedonly` in
    `vk.xml` (public pull request 1210).
  * Create explicit valid usage statements from text in the description of
    slink:VkValidationFeaturesEXT (public pull request 1212).
  * Update style guide to add "`user`" to the list of words *not* to use,
    instead recommending "`application`" (public pull request 1213).
  * Fix typos where `ext` was used in the style guide instead of the new
    `apiext` asciidoctor macro (public pull request 1214).
  * Miscellaneous minor markup and editing fixes (public pull request 1215).
  * Remove etext:KHR from promoted ename:VK_MAX_DRIVER_NAME_SIZE in the
    description of slink:VkPhysicalDeviceDriverProperties (public pull
    request 1218).
  * Correct use of `NULL` to dlink:VK_NULL_HANDLE in the
    <<acceleration-structure-inactive-prims, Inactive Primitives and
    Instances>> section (public pull request 1219).
  * Remove trailing periods on valid usage statement text, as required by
    the style guide, and add `scripts/deperiodize_vuids.py` to do this in
    the future if needed (public pull request 1220).

Internal Issues:

  * Provide a warning in the repository `README.adoc` of pending header
    changes to remove etext:VK_*_BEGIN_RANGE, etext:VK_*_END_RANGE, and
    etext:VK_*_RANGE_SIZE tokens (internal issue 872).
  * Describe the meaning of code:Device for the `<<VK_KHR_shader_clock>>`
    extension in the <<shaders-scope-device, Device>>,
    <<shaders-scope-queue-family, Queue Family>>, and
    <<shaders-scope-command, Command>> sections of the shader
    <<shaders-scope, Scope>> section (internal issue 1955).
  * Allow slink:VkDebugUtilsObjectNameInfoEXT::pname:pObjectName to be
    either NULL or an empty string to remove a previously set name (internal
    issue #2019).
  * Add missing VK_ERROR_OUT_OF_HOST_MEMORY error code in `vk.xml` for
    flink:vkEnumerateInstanceVersion (internal issue 2029).
  * Require code:R32i or code:R32ui image format for
    code:OpImageTexelPointer atomic operations in the
    <<spirvenv-module-validation, Validation Rules within a Module>> section
    (internal issue 2049).
  * Remove the `<pattern>` element from images used in the specification, to
    avoid complaints from prawn-svg during PDF spec builds (internal issue
    2053).
  * Clarify usable sample counts for empty subpasses in the
    <<features-variableMultisampleRate>> section and the related
    flink:vkCmdBindPipeline valid usage statement, as well as in the
    <<limits-framebufferNoAttachmentsSampleCounts>>
    <<renderpass-noattachments>> sections (internal issue 2066).
  * Clarify pname:aspectMask usage in render passes in
    slink:VkGraphicsPipelineCreateInfo valid usage statement 01565 and in
    slink:VkAttachmentReference2 (internal merge request 3664).
  * Remove unused etext:VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_KHR
    token from `vk.xml` and the `<<VK_KHR_ray_tracing>>` appendix
    (internal merge request 3680).
  * Require <<features-subgroup-extended-types,
    pname:shaderSubgroupExtendedTypes>> for Vulkan 1.2 (internal merge
    request 3680).
  * Generate symlinks from refpage aliases to the API they're aliasing
    (internal merge request 3694).
  * Add an alias from the old ename:VK_ANDROID_NATIVE_BUFFER_EXTENSION_NAME
    token (internal merge request 3697).
  * Add `scripts/compImages.sh` to compare all images in two git branches of
    the specification (internal merge request 3699).
  * Improve valid usage statements for `<<VK_NV_device_generated_commands>>`
    in flink:vkCmdExecuteGeneratedCommandsNV,
    slink:VkGeneratedCommandsInfoNV,
    flink:vkCmdPreprocessGeneratedCommandsNV,
    slink:VkIndirectCommandsStreamNV, slink:VkIndirectCommandsLayoutTokenNV
    and slink:VkGraphicsPipelineCreateInfo (internal merge request 3702).
  * Clarify differences between `<<VK_NV_ray_tracing>>` and
    `<<VK_KHR_ray_tracing>>` for
    slink:VkPipelineCreationFeedbackCreateInfoEXT pipeline creation,
    pname:shaderGroupHandleSize and pname:maxRecursionDepth limit
    requirement differences, and detangle `SPV_KHR/NV_ray_tracing` in the
    <<spirvenv-capabilities-table, List of SPIR-V Capabilities and enabling
    features or extensions>> (internal merge request 3710).
  * Add flink:vkGetImageViewAddressNVX and
    slink:VkImageViewAddressPropertiesNVX to `<<VK_NVX_image_view_handle>>`
    (internal merge request 3710).
  * Shorten 'make' output by reducing redundant logging output from refpage
    build targets (internal merge request 3729).
  * Replace sname: macro with slink: everywhere except language actually
    describing the structure in the macro argument (internal merge request
    3728).
  * Add flink:vkGetBufferMemoryRequirements2 and
    flink:vkGetImageMemoryRequirements2 to the commands for which the
    implementation makes guarantees about certain properties of the memory
    requirements in the <<resources-association, Resource Memory
    Association>> section, following the description of
    slink:VkMemoryRequirements (internal merge request 3730).
  * Add valid usage statements for
    `<<VK_ANDROID_external_memory_android_hardware_buffer>>` (internal merge
    request 3731).
  * Add requirements on the
    slink:VkAccelerationStructureMemoryRequirementsInfoKHR acceleration
    structure for which memory type bits must be exposed (internal
    advisorypanel issue 28).

New Extensions:

  * `<<VK_QCOM_render_pass_store_ops>>`


source: https://github.com/KhronosGroup/Vulkan-Docs/commit/019f62b11de9358d3383ead2e1a8c5bc2fda23ad


New extensions:
- VK_QCOM_render_pass_store_ops

JeGX

Quote
Change log for April 16, 2020 Vulkan 1.2.138 spec update:

  * Update release number to 138 for this update.

Github Issues:

  * Use correctly tagged normative term macros in various places (public
    pull request 1217).
  * Fix C arrow markup in parameter descriptions (public pull request 1222).

Internal Issues:

  * Add language to the <<features-requirements, Feature Requirements>>
    section, the <<versions, Core Revisions>> appendix, and the applicable
    extensions to require major feature bits if the corresponding extension
    is supported (internal issue 1961).
  * Allow slink:VkAccelerationStructureCreateInfoKHR::pname:maxGeometryCount
    = 0, and clarify that exactly one of pname:compactedSize and
    pname:maxGeometryCount must: be zero. (internal issue 2079).
  * Add `allowduplicate` attribute to XML `type` tags to enable future
    structures which can allow multiple copies of a structure in their
    pname:pNext chain (internal issue 2090).
  * Add the glossary term "`format features`", and make minor clarifications
    to uses of this term in several places in the <<resources, Resource
    Creation>> chapter and the
    <<resources-sampler-ycbcr-conversion-format-features, Sampler Ycbcr
    Conversion Format Features>> section (internal merge request 3727).
  * Add a constraint to the <<memory-external-android-hardware-buffer,
    Android Hardware Buffer>> section requiring that bound slink:VkImage or
    slink:VkBuffer objects be created with the
    ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID
    flag set, and corresponding valid usage statements to
    flink:vkBindBufferMemory, slink:VkBindBufferMemoryInfo,
    flink:vkBindImageMemory, and slink:VkBindImageMemoryInfo (internal merge
    request 3732).
  * Fix pname:memoryTypes ordering description for device coherent memory
    (ename:VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD) in the
    <<memory-device-bitmask-list>> section (internal merge request 3738).
  * Replace code:AHARDWAREBUFFER_USAGE_GPU_COLOR_OUTPUT with
    code:AHARDWAREBUFFER_USAGE_GPU_FRAMEBUFFER in the
    <<memory-external-android-hardware-buffer-usage, AHardwareBuffer Usage
    Equivalence>> table, and add
    ename:VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT flag for this case
    (internal merge request 3741).
  * Add more references to `NV` and `KHR` ray tracing pipelines in
    discussions of creating pipelines, or generalize text so they need not
    all be mentioned by name (internal merge request 3743).
  * Allow *ShaderCallKHR* memory scope in ray tracing shaders, in the
    <<spirvenv-module-validation, Validation Rules within a Module>>
    appendix (internal merge request 3744).
  * Use Khronos Dockerhub image for spec builds in internal CI (internal
    merge request 3748).
  * Add the `<<VK_KHR_dedicated_allocation>>` extension as a dependency of
    `<<VK_ANDROID_external_memory_android_hardware_buffer>>` (internal merge
    request 3751).

source: https://github.com/KhronosGroup/Vulkan-Docs/commit/ccd6dfea90ab21d0f5a3fd6f67c9753474d2db33