forked from KhronosGroup/Vulkan-Docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog.txt
10711 lines (8928 loc) · 490 KB
/
ChangeLog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Copyright 2016-2022 The Khronos Group Inc.
SPDX-License-Identifier: CC-BY-4.0
Update Log for the Vulkan-Docs repository on Github. Updates are in reverse
chronological order starting with the latest public release.
This summarizes the periodic public updates, not individual commits. Updates
on Github are done as single large patches at the release point, collecting
together the resolution of many Khronos internal issues, along with any
public pull requests that have been accepted.
-----------------------------------------------------
Change log for June 16, 2022 Vulkan 1.3.218 spec update:
* Update release number to 218 for this update.
Public Issues:
* Add apiext:VK_KHR_maintenance4 relaxed interface valid usage statement
to the <<spirvenv-module-validation-runtime, Runtime SPIR-V Validation>>
section (public pull request 1860).
* Fix field name in slink:VkRenderingAttachmentInfo valid usage statement
(public pull request 1861).
* Fix typo in slink:VkFramebufferCreateInfo valid usage statements 04533 /
04544 (public pull request 1873).
* Remove duplicate valid usage statement 06060 (public pull request 1874).
* Rework <<fxvertex-input-address-calculation, Vertex Input Address
Calculation>> section (public pull request 1869).
* Split Github CI script into individual jobs to decrease run time (public
pull request 1870).
Internal Issues:
* Refactor some valid usage statements for drawing commands that depend on
apiext:VK_EXT_color_write_enable (internal issue 2868).
* Refactor description of
flink:vkGetPhysicalDeviceVideoFormatPropertiesKHR and add
video-profile-specific error codes (internal issues 2965 and 2995).
* Add NOTEs regarding Android layer discovery to
flink:vkEnumerateDeviceLayerProperties and
flink:vkEnumerateDeviceExtensionProperties (internal issue 3070).
* Update slink:VkSubpassDependency valid usage statements based on
language in synchronization chapter (internal issue 3075).
* Rename slink:VkQueueFamilyQueryResultStatusProperties2KHR member from
ptext:supported to pname:queryResultStatusSupport for a provisional
video extension (internal issue 3092).
* Expand allowed use of `limittype` XML attribute to additional limit and
property structures, and validate its use (internal issue 3101).
* Update registry schema and the extension metadocumentation generator
script to interpret extension 'requires' attributes as requiring such
extensions be enabled for device level functionality, rather than just
supported (internal issue 3116).
* Replace XML dependency of apiext:VK_KHR_video_queue on
apiext:VK_KHR_sampler_ycbcr_conversion with a dependency on
apiext:VK_KHR_synchronization2 plus Vulkan 1.1 (internal merge request
5217).
* Fix typo in anchor text in the <<clears-inside, Clearing Images Inside A
Render Pass Instance>> section (internal merge request 5241).
* Use feature template include markup for
slink:VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM
(internal merge request 5242).
-----------------------------------------------------
Change log for June 9, 2022 Vulkan 1.3.217 spec update:
* Update release number to 217 for this update.
Public Issues:
* Clarify meaning of "`private data slot`" for apiext:VK_EXT_private_data
(public issue 1675)
* Minor markup fix in the <<spirvenv-module-validation-standalone>>
section (public merge request 1864).
Internal Issues:
* Clarify that <<primsrast-sampleshading, Sample Shading>> affects the
number of times the fragment shader is evaluated, rather than dictating
fragment data (internal issue 3003).
* Clarify interaction of the
slink:VkPhysicalDeviceLimits::pname:strictLines limit with
apiext:VK_EXT_line_rasterization in
slink:VkPhysicalDeviceLineRasterizationFeaturesEXT and the
<<line_linear_interpolation>> section (internal issue 3042).
* Clarify that code:EarlyFragmentTests allows for sample counting after
fragment shading and multisample coverage in the introduction to the
<<fragops, Fragment Operations>> chapter (internal issue 3085).
* Update description of ray tracing <<features-requirements Feature
Requirements>> for consistency and to remove redundancy. Add an issue to
apiext:VK_KHR_ray_tracing_pipeline explaining why
apiext:VK_KHR_pipeline_library is an interaction, rather than a required
dependency. (internal issue 3103).
* Define alignment requirements for matrices in terms of arrays.
in the <<interfaces-alignment-requirements,
Alignment Requirements>> section
(internal issue 3105).
* Add valid usage statements for code:StorageBuffer and code:Uniform
code:PushConstant types to the <<spirvenv-module-validation-standalone,
Standalone SPIR-V Validation>> section (internal merge request 5080).
* Fix conditional markup interaction for
apiext:VK_KHR_depth_stencil_resolve and apiext:VK_KHR_dynamic_rendering
in slink:VkRenderingInfo and slink:VkRenderingAttachmentInfo valid usage
statements, now that apiext:VK_KHR_dynamic_rendering requires
apiext:VK_KHR_depth_stencil_resolve (internal merge request 5224).
* Clarify dependencies and fix broken chapter links for
apiext:VK_ARM_rasterization_order (internal merge request 5229).
* Add a valid usage statement to flink:vkCmdEndRendering to disallow
calling it when transform feedback is active (internal merge request
5230).
* Update reference to a style guide chapter (internal merge request 5231).
* Clarify that slink:VkExportMemoryAllocateInfo::pname:handleTypes can be
zero in spec description, matching XML and other pname:handleType
members (internal merge request 5234).
New Extensions:
* apiext:VK_EXT_metal_objects
* apiext:VK_EXT_non_seamless_cube_map
-----------------------------------------------------
Change log for June 2, 2022 Vulkan 1.3.216 spec update:
* Update release number to 216 for this update.
* Note: most spec updates will occur on Thursdays going forward, not
Tuesdays.
Public Issues:
* Make formal names in the <<synchronization-dependencies-execution>>
section more memorable (public pull request 1837).
* Refactor slink:VkPipelinenfoKHR / slink:VkPipelineInfoEXT markup (public
issue 1857).
* Fix conditional markup in the <<shaders-ray-generation-execution Ray
Generation Shader Execution>> section for references to shader binding
tables (public issue 1858).
* Fix "`a`" -> "`an`" typo (public pull request 1865).
Internal Issues:
* Clarify that flink:vkCmdClearAttachments is not a drawing command
(internal issue 3055).
* Remove requirements that the boolean
slink:VkPhysicalDeviceTexelBufferAlignmentProperties::pnamestorageTexelBufferOffsetSingleTexelAlignment
and pname:uniformTexelBufferOffsetSingleTexelAlignment limits must: be a
power of two (internal issue 3081).
* Fix the structextends and constness issues in
apiext:VK_EXT_subpass_merge_feedback (this is a breaking API change, but
there is only one known implementation at present) (internal issue
3095).
* Update to latest asciidoctor-chunker.js so links to undefined anchors in
the chunked HTML outputs are rendered with the undefined anchor and CSS
class `"target-missing"`, instead of as `href="undefined"` (internal
merge request 5170).
-----------------------------------------------------
Change log for May 24, 2022 Vulkan 1.3.215 spec update:
* Update release number to 215 for this update.
Public Issues:
* Fix markup error to make slink:VkImageResolve2 appear right after
slink:VkImageResolve, rather than appearing in the next section (public
pull request 1856).
Internal Issues:
* Allow slink:VkDescriptorPoolCreateInfo::pname:poolSizeCount to be `0` in
`vk.xml` (internal issue #2974).
* Add valid usage statements to flink:vkCmdExecuteCommands requiring that
the depth or stencil format in
slink:VkCommandBufferInheritanceRenderingInfo must be
ename:VK_FORMAT_UNDEFINED if a `NULL` attachment is used
(internal issue 3016).
* Remove (incomplete) list of SPIR-V decorations from intro of interface
matching chapter (internal issue 3043).
* Add valid usage statement disallowing
VkImageDrmFormatModifierExplicitCreateInfoEXT in the pname:pNext chain
of slink:VkDeviceImageMemoryRequirementsKHR (internal issue #3051).
* Add missing references to flink:vkQueueSubmit2 in the
<<synchronization-fences-signaling>> and
<<synchronization-semaphores-signaling, Semaphore Signaling>> sections
(internal issue #3077).
* Clarify that pipeline libraries can link against other libraries
following the description of slink:VkPipelineLibraryCreateInfoKHR
(internal issue #3083).
* Fix suffix of some SPIR-V tokens to `AMD` for
apiext:VK_AMD_shader_early_and_late_fragment_tests (internal merge
request #5199).
New Extensions:
* apiext:VK_KHR_fragment_shader_barycentric
-----------------------------------------------------
Change log for May 17, 2022 Vulkan 1.3.214 spec update:
* Update release number to 214 for this update.
Public Issues:
* Clarify protected queue creation language for slink:VkDeviceCreateInfo,
slink:VkDeviceQueueCreateInfo,
slink:VkDeviceQueueGlobalPriorityCreateInfoKHR, and
slink:VkDeviceQueueInfo2 (public issue 1761, internal issue 2978).
* Add valid usage statements for usage and format features bits for
resolve image commands (public pull request 1826).
* Add apiext:VK_KHR_depth_stencil_resolve dependency to
apiext:VK_KHR_dynamic_rendering (public pull request 1831).
* Make some missing API dependencies explicit in XML (public issue 1840).
* Mark slink:VkSubresourceLayout2EXT as `returnedonly` in XML (public pull
request 1848).
* Replace manual links in VK_KHR_ray_tracing_maintenance1 appendix (public
pull request 1849).
* Add valid usage statement for pname:pipelinePropertiesIdentifier
feature, and change a valid usage statement to refer to the
pname:imageCompressionControlSwapchain feature rather than the related
extension (public pull request 1852).
Internal Issues:
* Fix description of parameters defined by
apiext:VK_EXT_depth_clip_control for slink:VkViewport (internal issue
3044)
* Add valid usage statements to slink:VkGraphicsPipelineCreateInfo banning
graphics pipeline libraries having descriptors for other libraries
(internal issue 3080).
* Add valid usage statements to slink:VkGraphicsPipelineCreateInfo and
flink:vkCmdBindDescriptorSets allowing `NULL` set layouts with
non-independent sets (internal issue 3082).
* Set `noautovalidity` attribute in XML for
flink:vkGetPipelinePropertiesEXT::pname:pPipelineProperties (internal
issue 3088).
* Update apiext:VK_NV_device_diagnostics_config to add a new config bit
(internal merge request 5160).
* Clarify unsupported conservative point/line rasterization in
slink:VkPipelineRasterizationConservativeStateCreateInfoEXT and in valid
usage statements for slink:VkGraphicsPipelineCreateInfo (internal merge
request 5169).
* Add missing `limittype` attributes to XML for
slink:VkQueueFamilyProperties* and slink:VkFormatProperties* members
(internal merge requests 5171 and 5175).
* Improve XML `limittype` attribute of
slink:VkPhysicalDeviceFragmentShadingRatePropertiesKHR::pname:maxFragmentShadingRateCoverageSamples
for tool chain usage (internal merge request 5177).
* Change description of slink:VkPipelineLayoutCreateInfo::pname:flags now
that there are flag bits reserved for the underlying type (internal
merge request 5180).
* Fix typos in slink:VkGraphicsPipelineCreateInfo valid usage statements
(internal merge request 5191).
* Move attribute settings used in commonvalidity includes inside valid
usage blocks to generate correct validusage.json text (internal merge
request 5195).
New Extensions:
* apiext:VK_AMD_shader_early_and_late_fragment_tests
-----------------------------------------------------
Change log for May 10, 2022 Vulkan 1.3.213 spec update:
* Update release number to 213 for this update.
Public Issues:
* Replace the list of <<formats-packed, Packed Formats>> with a generated
version, and update the format generator script to support conditionals
(public pull request 1823).
* Fix typo in apiext:VK_INTEL_performance_query (public issue 1845).
Internal Issues:
* Add valid usage statement limiting
slink:VkDisplaySurfaceCreateInfoKHR::pname:transform to a single,
supported transformation (internal merge request 5166).
* Update sample code for apiext:VK_KHR_ray_query in the extension appendix
(internal issue 3066).
* Fix some `limittype` attributes for
slink:VkPhysicalDeviceTransformFeedbackPropertiesEXT and
slink:VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV members in
`vk.xml` (internal merge requests 5173 and 5174).
New Extensions:
* apiext:VK_EXT_image_compression_control
* apiext:VK_EXT_pipeline_properties
* apiext:VK_EXT_subpass_merge_feedback
* apiext:VK_KHR_ray_tracing_maintenance1
-----------------------------------------------------
Change log for April 21, 2022 Vulkan 1.3.212 spec update:
* Update release number to 212 for this update.
Public Issues:
* Add <<attachment-type-imagelayout, layout requirements for resolve
attachments>> (public issue 1777).
* Improve description of and references to elink:VkCompareOp (public pull
request 1805).
* Fix typos in <<fundamentals-api-name-aliases, typo alias example>>
(public pull request 1821).
Internal Issues:
* Modify pipeline layout override for
apiext:VK_EXT_graphics_pipeline_library (internal merge request 5164)
* Include graphics pipelines in definition of
ename:VK_PIPELINE_CREATE_LIBRARY_BIT_KHR (internal issue 3068).
* Add cap for B frame as L1 reference, and disable SPS
direct_8x8_inference_flag in provisional apiext:VK_EXT_video_encode_h264
extension (internal issue 3064).
* Add implementor's note for memory type index ambiguity to
slink:VkMemoryAllocateInfo for
apiext:VK_ANDROID_external_memory_android_hardware_buffer (internal
issue 2762).
* Minor editorial fixes for the <<memory, Memory Allocation>> chapter.
-----------------------------------------------------
Change log for April 5, 2022 Vulkan 1.3.211 spec update:
* Update release number to 211 for this update.
Public Issues:
* Clarify dynamic offset with ename:VK_WHOLE_SIZE including new
<<buffer-info-effective-range>> language (public issue 1546).
* Relax depth copy requirement in common copy image valid usage statement
00153 to ename:VK_IMAGE_TYPE_3D only and clarify copying depth slices
for slink:VkImageCopy (public issue 1804).
* Avoid a chain of enumerant aliases in `vk.xml` by aliasing
ename:VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR directly to
ename:VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT (public issue 1814).
* Fix structure name containing pname:compareMask value in
flink:vkCmdSetStencilCompareMask (public pull request 1806).
* Fix miiscellaneous minor markup issues (public pull request 1810).
* Simplify <<fundamentals-api-name-aliases, typo alias example>> to refer
to aliases in the core API rather than extensions (public pull request
1811).
* Fix order of swapchain vs device destruction in
flink:vkCreateSwapchainKHR (public pull request 1817).
* Minor fix for VK_EXT_graphics_pipeline_library proposal vertex shader
sample code (public pull request 1819).
Internal Issues:
* Clarify timestamps write when the stage is done for
flink:vkCmdWriteTimestamp and flink:vkCmdWriteTimestamp2 (internal issue
2287).
* Add pname:samplerFilterMinmax feature valid usage statement to
slink:VkSamplerCreateInfo (internal issu 2747).
* Add success and error codes to `vk.xml` for flink:vkWaitForPresentKHR
(internal issue 2822).
* Add footnote to flink:vkGetDeviceProcAddr suggesting, but not requiring
returning `NULL` for core commands beyond the version supported by the
implementation (internal issue 3002).
* Fix valid usage statement for slink:VkImageFormatListCreateInfo when the
image is created with
ename:VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT (internal issue
3032).
* Disallow binding ray tracing pipelines to protected command buffers in
flink:vkCmdBindPipeline (internal issue 3034).
* Update valid usage statements for interaction of
flink:vkGetRayTracingShaderGroupHandlesKHR and
flink:vkGetRayTracingCaptureReplayShaderGroupHandlesKHR with
apiext:VK_KHR_pipeline_library (internal issue 3040).
* Add capability flags to report support to disable transform skip and use
B frame in L1 reference list for the provisional
apiext:VK_EXT_video_encode_h265.txt extension (internal issue 3050).
* Update description of
slink:VkPipelineShaderStageCreateInfo::pname:module and add valid usage
for modules being optional when apiext:VK_EXT_graphics_pipelin_library
is supported (internal issue 3059).
* Remove redundant slink:VkVideoEncodeInfoKHR and
slink:VkVideoDecodeInfoKHR pname:codedOffset / pname:codedExtent
parameters from the provisional video extensions (internal issue 3062).
* Fix "`code:VkDescriptorSetLayout`" typo in
flink:vkCmdBindDescriptorSets.
New Extensions:
* apiext:VK_EXT_image_2d_view_of_3d
-----------------------------------------------------
Change log for March 29, 2022 Vulkan 1.3.210 spec update:
* Update release number to 210 for this update.
Public Issues:
* Clarify that descriptors are not referenced for unused
ename:VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT descriptors unless
dynamically used (public issue 1794).
* Remove "`If renderpass is NULL`" from slink:VkFramebufferCreateInfo
valid usage statements (public issue 1800).
Internal Issues:
* Add valid usage statements to slink:VkAttachmentDescription and
slink:VkAttachmentDescription2 for the cases when pname:loadOp is or
pname:stencilLoadOp is ename:VK_ATTACHMENT_LOAD_OP_LOAD and
pname:initialLayout is ename:VK_IMAGE_LAYOUT_UNDEFINED, and when
pname:format is ename:VK_FORMAT_UNDEFINED (internal issue 2349).
* Add valid usage statements to slink:VkRenderPassMultiviewCreateInfo and
slink:VkSubpassDescription2 to respect <<limits-maxMultiviewViewCount,
pname:maxMultiviewViewCount>> (internal issue 2511).
* Clarify definition of <<shaders-staticuse, static use instructions>>
(internal issue 2639).
* Fix typo pname:pRanges -> pname:pRegions in common validity statements
for copy image commands (internal issue 3052).
* Update valid usage statement for build acceleration structure common VUs
to allow inactive instances (internal merge request 5116).
* Require <<features-colorWriteEnable, pname:colorWriteEnable>> for
apiext:VK_EXT_color_write_enable in the <<features-requirements, Feature
Requirements>> section.
* Better specify when depth/stencil must be written in
slink:VkPipelineShaderStageCreateInfo valid usage statements.
New Extensions:
* apiext:VK_EXT_graphics_pipeline_library
* apiext:VK_EXT_primitives_generated_query
-----------------------------------------------------
Change log for March 23, 2022 Vulkan 1.3.209 spec update:
* Update release number to 209 for this update.
Public Issues:
* Add VU to slink:VkImageViewCreateInfo ensuring
slink:VkImageViewCreateInfo::pname:format and
slink:VkSamplerYcbcrConversionCreateInfo::pname:format are the same when
used together (public issue 1752).
* Add VU to slink:VkMemoryAllocateInfo to limit to one import operation at
a time (public issue 1782).
Internal Issues:
* Rephrase some VUs for apiext:VK_EXT_color_write_enable (internal issue
2868).
* Update code:Std* structures in provisional video extensions to remove
SPS and VPS IDs from code:StdVideoDecode*PictureInfo. The implementation
should obtain the IDs indirectly from the associated PPS picture
parameters based on the picture parameter and slice header PPS IDs.
Unify/add STD Encode h.264/265 weight tables (internal issue 2930).
* Many minor updates to versioning and reporting for the provisional video
extensions (internal issue 3019).
* Add VU to slink:VkDeviceCreateInfo to require consistent global
priorities for protected and unprotected queues created from the same
queue family (internal issue 3021).
* Fix some `ifndef::` conditional expression markup (internal issue 3038).
* Remove the "`Common Operation`" section near the start of the <<copies>>
chapter and refactor the bullet points into commonvalidity valid usage
statements, if not already covered by VUs (internal issue 3039).
* Add some valid usage statements to the
<<spirvenv-module-validation-standalone, Standalone SPIR-V Validation>>
section that were already being checked by `spirv-val` (internal merge
request 5081).
* Make markup for code:OpImage*Dref* consistent (internal merge request
5091).
* Remove VU 04676, which replicates a statement in the SPIR-V
specification, from <<spirvenv-module-validation-standalone, Standalone
SPIR-V Validation>> (internal merge request 5094).
* Clarify that the pname:finalLayout of an attachment is not ignored in
the <<renderpass-load-store-ops>> section for
slink:VkAttachmentDescription (internal merge request 5101).
* Add VU for ename:VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT dynamic state to
the common validity statements for drawing commands (internal merge
request 5103).
-----------------------------------------------------
Change log for March 15, 2022 Vulkan 1.3.208 spec update:
* Update release number to 208 for this update.
Internal Issues:
* Change definition of _inactive triangle_ in the
<<acceleration-structure-inactive-prims, Inactive Primitives and
Instances>> section to one for which the first (X) component of _any_
vertex is NaN (internal issue 3026).
* Add storage image equivalence for code:AHardwareBuffer-backed external
memory in slink:VkMemoryAllocateInfo and the
<<memory-external-android-hardware-buffer-usage, AHardwareBuffer Usage
Equivalence>> table (internal issue 3004).
New Extensions:
* apiext:VK_KHR_portability_enumeration
-----------------------------------------------------
Change log for March 8, 2022 Vulkan 1.3.207 spec update:
* Update release number to 207 for this update.
Github Issues:
* Rejoin part of flink:vkCreateSwapchainKHR language that had become
dislocated from the start of the description (public pull request 1613).
* Correct the `limittype` attribute for
slink:VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV::pname:maxFragmentShadingRateInvocationCount
(public issue 1767).
* Fix markup typo in
slink:VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
(public issue 1786).
* Use consistent terminology for variable-sized descriptor bindings, and
add a glossary entry for the term (public issue 1724).
* Specify `optional` attribute correctly for the
pname:pDrmFormatModifierProperties member of
slink:VkDrmFormatModifierPropertiesListEXT and
slink:VkDrmFormatModifierPropertiesList2EXT (public issue 1766).
* Fix `limittype` attribute value for
slink:VkPhysicalDeviceLimits::pname:maxColorAttachments (public issue
1768).
* Add valid usage statements to slink:VkRenderPassMultiviewCreateInfo and
slink:VkSubpassDescription2 to constrain requirements for the
<<features-multiview>> feature on render pass creation (public issue
1774).
* Fix typos in the apiext:VK_KHR_deferred_host_operations appendix (public
issue 1784).
* Fix typo "`unscaled`" -> "`scaled`" in filtering and conversion rules
for flink:vkCmdBlitImage (public merge request 1792).
Internal Issues:
* Clarify SPIR-V valid usage statement 04680, and remove 06273, by stating
all possible uses of code:OpTypeRuntimeArray allowed and then removing
the restriction at runtime if <<features-runtimeDescriptorArray,
runtimeDescriptorArray>> is not enabled (internal issue 2408).
* Update <<resources-image-inherited-usage>> and
slink:VkImageViewCreateInfo to remove requirement for a YCbCr sampler
for video image views (internal issue 2688).
* Specify in the <<primsrast-depthbias-computation, Depth Bias
Computation>> section that depth bias only works with polygon topologies
with any polygon mode, but not line and point topologies (internal issue
2793).
* Add slink:VkVideoDecodeCapabilitiesKHR,
elink:VkVideoDecodeCapabilityFlags, and
elink:VkVideoDecodeCapabilityFlagBitsKHR to the provisional
apiext:VK_KHR_video_decode_queue extension (internal issue 2964).
* Clarify which layers of an attachment et automatic layout transitions in
the <<renderpass-layout-transitions>> section (internal issue 3012).
* Make slink:VkDeviceImageMemoryRequirements::pname:planeAspect `optional`
in `vk.xml` (internal issue 3020).
* Make it more obvious that an AS update cannot change active <-> inactive
primitives and instances in the <<acceleration-structure-update,
Acceleration Structure Update Rules>> section (internal issue 3025).
* Clarify when the various ptext:p*State members of
slink:VkGraphicsPipelineCreateInfo members are used (internal issue
3028).
* Fix resolution of issues 1 and 3 for apiext:VK_EXT_depth_clip_control
(internal merge request 5057).
* Add VUs to slink:VkAttachmentDescription2 to avoid specifying stencil
layout twice with depth/stencil attachments.
* Fix markup typo in slink:VkPhysicalDeviceMultiDrawPropertiesEXT that
resulted in the wrong structure name being embedded in common valid
usage statements.
* Fix missing `len` attribute in `vk.xml` for
slink:VkVideoProfilesKHR::pname:pProfiles.
New Extensions:
* apiext:VK_VALVE_descriptor_set_host_mapping
-----------------------------------------------------
Change log for February 17, 2022 Vulkan 1.3.206 spec update:
* Update release number to 206 for this update.
Github Issues:
* Add valid usage statements common to draw dispatch commands restricting
allowed instructions (public issue 1749).
* Remove unused elink:VkPrivateDataSlotCreateFlagBits type from `vk.xml`
(public issue 1754).
* Clarify that flink:vkGetInstanceProcAddr should return a valid function
pointer when the first argument is either NULL or a valid instance
handle (public issue 1763).
* Add `returnedonly="true"` attribute to
slink:VkPhysicalDeviceShaderIntegerDotProductProperties in `vk.xml`
(public issue 1771).
* Add `objecttype` attribute to
slink:VkDeviceMemoryReportCallbackDataEXT::pname:objectHandle in
`vk.xml` (public issue 1772).
Internal Issues:
* Update encoder capability APIs in the provisional video extensions to
align with H.264/H.265 codecs and support a broader range of
implementations (internal issues 1842 / 2842).
* Add `spirvextension` tag to `vk.xml` expressing the relationship between
apiext:VK_INTEL_shader_integer_functions2 and
`SPV_INTEL_shader_integer_functions` (internal issue 2899)
* Add a deprecation note for code:WorkgroupSize (internal issue 2908).
* Align the provisional slink:VkVideoEncodeH264VclFrameInfoEXT structure
to the similar one in apiext:VK_EXT_video_encode_h265 (internal issue
2966).
* Add valid usage statements making code:SkipTrianglesKHR and
code:SkipAABBsKHR mutually exclusive (internal issue 2994).
* Do not include valid usage statements requiring that the
<<features-extendedDynamicState, extendedDynamicState>> feature be
enabled when building Vulkan 1.3 specifications (internal issue 3005).
* Update valid usage statements 06423 and 06424 common to draw dispatch
commands to use "`image view format`" rather than "`image format`"
(internal issue 3008).
* Remove mistaken requirement of
<<features-descriptorBindingUniformBufferUpdateAfterBind,
pname:descriptorBindingUniformBufferUpdateAfterBind>> for the
<<profile-features-roadmap-2022, Roadmap 2022>> profile (internal issue
3017).
* Remove mistaken requirement of
<<features-vulkanMemoryModelAvailabilityVisibilityChains,
pname:vulkanMemoryModelAvailabilityVisibilityChains>> for Vulkan 1.3 in
the <<features-requirements, Feature Requirements>> section.
* Add valid usage statements to
sname:VkCommandBufferInheritanceRenderingInfo,
sname:VkPipelineRenderingCreateInfo, and sname:VkRenderingInfo requiring
that pname:depthAttachmentFormat and pname:stencilAttachmentFormat
include the corresponding aspects.
* Remove references to
slink:VkPhysicalDeviceBufferDeviceAddressFeaturesEXT when
apiext:VK_EXT_buffer_device_address is not present.
* Clarify that excess image write data is discarded in the
<<textures-output-format-conversion, Texel Output Format Conversion>>
section (internal merge request 5053).
-----------------------------------------------------
Change log for February 4, 2022 Vulkan 1.3.205 spec update:
* Update release number to 205 for this update.
Github Issues:
* Fix <<renderpass-attachment-nonattachment>> access language. Add related
valid usage statements for flink:vkCmdExecuteCommands and common VUs for
drawing commands, and update the glossary definition of "`Image
Subresources`" to include "`a specific ... set of aspects of an image`"
(public issues 1340, 1345, 1559; internal issues 2152, 2725).
* Fix markup "If" and punctuation issues (public pull request 1725).
* Fix link to incorrect structure for flink:vkCmdSetDepthBias command
(public pull request 1726).
* Improve wording of vkCmdBindDescriptorSets (public pull request 1732).
* Fix mismatching struct member descriptions in
slink:VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV (public issue
1735, 1736).
* Clarify that slink:VkImageCreateInfo::pname:flags is referred to by
slink:VkImageViewCreateInfo valid usage statement 04971 (public issue
1740).
* Add missing `SPV_KHR_device_group` `spirvextension` tag to `vk.xml`
(public issue 1745).
* Reference underlying type instead of promoted type alias in
`structextends` attributes for slink:VkSampleLocationsInfoEXT and
slink:VkCopyCommandTransformInfoQCOM (public pull request 1746).
* Fix typo in <<features-storageBuffer8BitAccess,
storageBuffer8BitAccess>> xref (public pull request 1750).
* Fix formula markup in <<textures-texel-anisotropic-filtering, Texel
Anisotropic Filtering>> section (public pull request 1753).
* Fix typo in `.sType` member for
`proposals/VK_KHR_dynamic_rendering.asciidoc` (public pull request
1762).
* Add missing `len` attribute for
slink:VkImageFormatConstraintsInfoFUCHSIA::pname:pColorSpaces in
`vk.xml` (https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=91104,
internal merge request 5021).
Internal Issues:
* Rename `slice` to 'sliceSegment` in several provisional video extension
APIs (internal issue 2833).
* Fix several valid usage statements for
slink:VkDeviceImageMemoryRequirementsKHR (internal issue 2967).
* XML fixes for slink:VkAttachmentSampleCountInfoAMD members
pname:colorAttachmentCount and pname:pColorAttachmentSamples (internal
issue 2968).
* Remove `const` from pname:pNext member of
slink:VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM
(internal issue 2973).
* Make definition of <<code:RayTminKHR>>, <<code:WorldRayDirectionKHR>>,
and <<code:WorldRayOriginKHR>> values less vague (internal issue 2984).
* Remove `externsync` attribute for slink:VkBuffer and slink:VkImage in
flink:vkQueueBindSparse (internal issue 2989).
* Move the <<roadmap, Vulkan Roadmap Milestones>> title markup up one
level so that this section appears as a separate appendix rather than
accidentally being merged into the previous appendix (internal issue
2990).
* Fix a few places where promotion of APIs to Vulkan 1.3 should have
happened, but didn't, including defining ename:VK_IMAGE_ASPECT_NONE in
`vk.xml` and aliasing ename:VK_IMAGE_ASPECT_NONE_KHR to it (internal
issue 2999).
* Fix link to pipeline dynamic state section (internal merge request
4990).
* Add video codec headers to dependencies in `xml/Makefile` so 'make test'
works (internal merge request 4991).
* Fix caption for <<img-innertri, Inner Triangle Tessellation figure>>
(internal merge request 4994).
* Fix implication of code:EarlyFragmentTests when representative fragment
test is enabled in
slink:VkPipelineRepresentativeFragmentTestStateCreateInfoNV (internal
merge request 5006).
* Set `noautovalidity` attribute for
slink:VkVideoDecodeH264ProfileEXT::pname:pictureLayout to avoid
conflicting valid usage statements (internal issue 2946).
* Specify which structure is extended by
slink:VkQueueFamilyGlobalPriorityPropertiesKHR (internal issue 2982).
* Change a reference from sname:VkImageFormatProperties2 to
slink:VkFormatProperties2 in the <<resources-image-creation-limits>>
section (internal merge request 5016).
* Specify that the <<features-dynamicRendering, pname:dynamicRendering>>
feature is required by Vulkan 1.3 and the
apiext:VK_KHR_dynamic_rendering extension (internal merge request 5017).
* Fix typo in <<features-shaderZeroInitializeWorkgroupMemory,
shaderZeroInitializeWorkgroupMemory>> xref (internal merge request
5020).
* Add `Promotion to Vulkan 1.3` language in the
<<VK_KHR_buffer_device_address>> appendix to specify that
code:bufferDeviceAddress feature support is mandatory, unlike Vulkan
1.2.
* Clarify that state is not inherited from static to dynamic pipelines in
the <<pipelines-dynamic-state, Dynamic State>> section.
-----------------------------------------------------
Change log for January 25, 2022 Vulkan 1.3.204 spec update:
* Vulkan 1.3 initial release. Update release number to 204 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.2.203
update.
Github Issues:
* Reserve driver ID ename:VK_DRIVER_ID_MESA_VENUS (public merge request
1733).
Internal Issues:
* Update scripts and registry schema document to support multiple API
names in the `api` and `supported` attributes, to allow specializing API
definitions (internal issue 2809).
* Minor updates - update copyright dates to 2022, update release scripts
to generate artifacts for 1.3 as well as earlier specification versions
(internal issue 2969).
New Features:
* apiext:VK_KHR_global_priority (internal merge request 4869).
* <<roadmap-2022, `VK_KHR_roadmap_2022`>> ("`Roadmap 2022`") profile
(internal merge request 4797).
-----------------------------------------------------
Change log for December 20, 2021 Vulkan 1.2.203 spec update:
* Update release number to 203 for this update.
Github Issues:
* Generate auxiliary `vk_video` headers containing definitions of
`StdVideo*` types from new `xml/video.xml`, rather than including static
copies in the repository (public issue 1505).
* Clarify indexing of
slink:VkPipelineColorBlendStateCreateInfo::pname:pAttachments (public
issue 1656).
* Relocate VUID-VkWriteDescriptorSet-descriptorType-00322 to the commands
to which the structure is passed, and modify constraints in the VU for
flink:vkCmdPushDescriptorSetKHR to account for its behavior with
etext:SAMPLER and etext:COMBINED_IMAGE_SAMPLER descriptor types (public
issue 1686).
* Fix length inputs for optional array parameters in
slink:VkCuLaunchInfoNVX to allow pname:paramCount and pname:extraCount
to be set to zero. (public issue 1709).
* Fix typo pname:ppEnabledExtensions -> pname:ppEnabledExtensionNames
(public issue 1719).
Internal Issues:
* Add slink:VkQueueFamilyQueryResultStatusProperties2KHR structure to the
provisional apiext:VK_KHR_video_queue extension to report support (or
lack thereof) for the ename:VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR query
type ename:VK_QUERY_RESULT_WITH_STATUS_BIT_KHR status bit (internal
issue 2927).
* Add language to slink:VkImageCreateInfo, elink:VkImageUsageFlagBits,
tlink:VkImageUsageFlags, and slink:VkImageLayout for how to specify
usage flags when creating images for Vulkan Video implementations
requiring separate decode DPB and output (internal issue 2926).
* Require that newly created video sessions be reset before use in
slink:VkVideoCodingControlInfoKHR and
elink:VkVideoCodingControlFlagBitsKHR (internal issue 2928).
* Fix math <<textures-image-level-selection, describing image level
selection>> with apiext:VK_EXT_image_view_min_lod (internal issue 2943).
* Add temporal layer count field to
slink:VkVideoEncodeH264RateControlInfoEXT and
slink:VkVideoEncodeH265RateControlInfoEXT structures (internal issue
2948).
* Add a <<spirvenv-module-validation-runtime, Runtime SPIR-V valid usage
statement>> to enforce the <<limits-maxComputeSharedMemorySize,
pname:maxComputeSharedMemorySize limit>> (internal merge request 4846).
* Correct etext:VK_FORMAT_ETC2_R8G8B8A8_*_BLOCK block sizes to 128 bits in
the XML format tags (internal merge request 4975).
* Script and schema updates to correctly filter out XML elements with
non-matching 'api' attributes and support 'api' attributes on additional
XML tags (internal merge request 4981).
* Add apiext:VK_KHR_fragment_shading_rate proposal document to
retroactively provide justification and design document overview
(internal merge request 4983).
* Update generator scripts to properly handle <remove> elements containing
non-extending <enums>.
* Restructure some structure descriptions for better adherence to the
style guide and more detailed descriptions of their members.
New Extensions:
* apiext:VK_GOOGLE_surfaceless_query (internal merge request 4927).
* apiext:VK_NV_linear_color_attachment (internal merge request 4956).
* apiext:VK_QCOM_fragment_density_map_offset (internal merge request 4824).
-----------------------------------------------------
Change log for December 7, 2021 Vulkan 1.2.202 spec update:
* Update release number to 202 for this update.
Github Issues:
* Split some valid usage statements for slink:VkAttachmentDescription
so they can have appropriate conditional protection
(public pull request 1698).
* Clean up links to GLSL and SPIR-V extension documents (public pull
request 1705).
* Fix markup for <<primsrast-polygon-barycentrics, perspective
interpolation>> math (public pull request 1711).
Internal Issues:
* Clarify valid usage statements for
flink:vkCmdWriteTimestamp2KHR::pname:stage to accomodate
ename:VK_PIPELINE_STAGE_2_NONE_KHR (internal issue 2867).
* Disallow descriptorset decorations on non-descriptor ray tracing
variables in the <<spirvenv-module-validation-standalone, Standalone
SPIR-V Validation>> section (internal issue 2881).
* Fix sentence describing behavior when
slink:VkRenderingFragmentDensityMapAttachmentInfoEXT is not present in
the slink:VkRenderingInfoKHR::pname:pNext chain (internal issue 2881).
* Require that
slink:VkPhysicalDeviceRayTracingPipelinePropertiesKHR::pname:shaderGroupHandleAlignment
be a power of two (internal merge request 4943).
* Add a new ename:VK_IMAGE_ASPECT_NONE_KHR=0 enum to
slink:VkImageAspectFlagBits in the apiext:VK_KHR_maintenance4 extension
so that pname:planeAspect can be set to zero without having to use a
cast, and fix some typos (internal merge request 4961).
* Add "`must: be a power of two`" to all alignment limits (internal issue
2939).
* Make all limit anchors follow the `[[limit-NAME]]` style (internal merge
request 4969).
* Require render pass to be valid and add missing state subset
dependencies to slink:VkGraphicsPipelineCreateInfo valid usage
statements for apiext:VK_ARM_rasterization_order_attachment_access
(internal merge request 4970).
* Parameterize OpenGL and GLSL extension registry URLs via asciidoctor
attributes in `config/attribs.txt`, and move the existing SPIR-V
extension registry URL from the Makefile into that file. Use `https:`
prefixes on URLs instead of `http:` where possible.
-----------------------------------------------------
Change log for November 30, 2021 Vulkan 1.2.201 spec update:
* Update release number to 201 for this update.
Github Issues:
* Fix typo in refpage description of ename:VK_REMAINING_MIP_LEVELS
(public pull request 1702).
* Add missing structextends attribute for
slink:VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM
(public issue 1703).
* Fixes and clarifications to valid usage statements for
slink:VkRenderPassCreateInfo,
slink:VkRenderPassFragmentDensityMapCreateInfoEXT, and
slink:VkSubpassDescriptionDepthStencilResolve (matching changes in
public Vulkan-ValidationLayers pull request 3571).
Internal Issues:
* Changes to the provisional video extension encode rate control API,
including changing some existing structures and adding new structures
and flags (internal issue 1844).
* Update valid usage statements for apiext:VK_NV_mesh_shader (internal
issue 2880).
* Remove valid usage statement IDs 02854 / 02855 / 06081 / 06082, which
are duplicates of 06166 / 06167 (internal issue 2944).
* Add a valid usage statement banning code:OpImage*Dref* instructions on
non-depth views (internal merge request 3889).
* Add CI test for disallowed contractions (internal merge request 4934).
* Generate the <<formats-compatibility, Format Compatibility Class Table>>
from XML tags (internal merge request 4936).
* Clarify that dependent operations of quad-sensitive ops have helpers
(internal merge request 4947).
* Remove redundant valid usage statement for
apiext:VK_QCOM_render_pass_shader_resolve (internal merge request 4950).
* Support `api` attribute fully in XML and scripts (internal merge request
4951).
* Fix pname:planeIndex attribute in format XML for
ename:VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 (internal
merge request 4953).
-----------------------------------------------------
Change log for November 23, 2021 Vulkan 1.2.200 spec update:
* Update release number to 200 for this update.
Github Issues:
* Refer to flink:vkCmdPipelineBarrier2KHR::pname:pDependencyInfo as a
pointer, not an array (public issue 1456).
* Fix spelling and add backwards-compatibility aliases for some
elink:VkPipelinCreateFlagBits values (public issue 1676).
* Fix typo in apiext:VK_INTEL_shader_integer_functions2 (public issue
1696).
* Replace usage of {depth, color} buffer with {depth, color} attachment
(public pull request 1701).
* Add restriction to the <<formats-mandatory-features-depth-stencil,
manadatory format support table>> for depth/stencil formats preventing
implementations from advertising those bits in
slink:VkFormatProperties::pname:bufferFeatures (public
Vulkan-ValidationLayers issue 3225).
Internal Issues:
* Add an additional guarantee for buffer memory requirements in
slink:VkMemoryRequirements as a minor update to the
apiext:VK_KHR_maintenance4 extension (internal issue 2885).
* Add a <<fundamentals-api-name-aliases, section to the fundamentals
chapter>> describing typo aliases (internal issue 2897).
* Determine extensions dependencies directly from `vk.xml` in the build
scripts, rather than generating an auxiliary `extDependency.py` target
(internal issue 2923).
* Remove redundant SPIR-V `RuntimeSpirv` valid usage statements 04830,
06271, 06374, and 06375 (internal merge requests 4827, 4830).
* Suppress file-not-found `include::` errors for validusage target, using
an IncludeProcessor extension, due to the way in which the validusage
extension processes conditionals. Make all include paths absolute and
require this in the style guide (internal merge request 4925).
* Add missing `optional="true"` attribute to
slink:VkCommandBufferInheritanceRenderingInfoKHR::pname:colorAttachmentCount
(internal merge request 4935).
* Remove references to apiext:VK_KHR_synchronization2 enums when that
extension is not enabled in the specification being built (internal
merge request 4937).
* Minor wording changes for style guide compliance and consistency
(internal merge request 4938).
* Ignore etext:*_EXTENSION_NAME and etext:*_SPEC_VERSION aliases in
`makemanaliases.py` script since there are no corresponding refpages for
these meta-enums.
New Extensions:
* apiext:VK_ARM_rasterization_order_attachment_access (internal merge
request 3856).
* apiext:VK_EXT_depth_clip_control (public issues 986 and 1054).
-----------------------------------------------------
Change log for November 16, 2021 Vulkan 1.2.199 spec update:
* Update release number to 199 for this update.
Github Issues:
* Add upper bound for stext:AccelerationStructure geometry limits for
slink:VkPhysicalDeviceRayTracingPropertiesNV and
slink:VkPhysicalDeviceAccelerationStructurePropertiesKHR (public issue
1670).
* Trivial typos in proposal documents (public pull request 1682).
* Add missing stage mask common valid usage statements to
slink:VkSubmitInfo, slink:VkSubpassDependency, and
slink:VkSubpassDependency2; remove unused common VU 4098; and add new
stage mask VUs to flink:vkCmdBeginRenderPass,
flink:vkCmdBeginRenderPass2, flink:vkCmdSetEvent, flink:vkCmdResetEvent,
flink:vkCmdWaitEvents, and flink:vkCmdPipelineBarrier (public