Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Merge main into ray tracing #3

Open
wants to merge 821 commits into
base: ray-tracing
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
821 commits
Select commit Hold shift + click to select a range
ef909d0
remove `Device.create_buffer_impl`
teoxoy Jul 4, 2024
7223bfa
remove `Arc`s around `TempResource` variants
teoxoy Jul 4, 2024
c6761bd
add `ActiveSubmission.temp_resources` that contains all temporary res…
teoxoy Jul 4, 2024
1404950
remove `device_maintain_ids`
teoxoy Jul 4, 2024
439e28b
move trackers into `EncoderInFlight` on submit
teoxoy Jul 4, 2024
61739d9
remove `PendingWrites.executing_command_buffers`
teoxoy Jul 4, 2024
3cc6c27
remove `LifetimeTracker.future_suspected_{buffers,textures}`
teoxoy Jul 4, 2024
3fba403
don't check if the buffer is still "present" from the user's perspect…
teoxoy Jul 4, 2024
3142e15
remove the triage suspected machinery
teoxoy Jul 4, 2024
0e1c1f7
replace the tracker in `Device` with a new `DeviceTracker`
teoxoy Jul 4, 2024
a270577
make resource metadata generic over a `T: Clone`
teoxoy Jul 4, 2024
152a7e7
remove unnecessary `PhantomData`
teoxoy Jul 4, 2024
ac88c73
remove unused `BufferTracker.get()`
teoxoy Jul 4, 2024
f5a4489
don't call `drain_transitions()` of we drop the results
teoxoy Jul 4, 2024
aa9cb71
introduce `DeviceBufferTracker` which holds weak references to buffers
teoxoy Jul 4, 2024
4255268
introduce `DeviceTextureTracker` which holds weak references to textures
teoxoy Jul 4, 2024
4afba3b
Merge remote-tracking branch 'refs/remotes/gfx-rs/trunk' into ray-tra…
Vecvec Jul 9, 2024
7cb078b
fix merge
Vecvec Jul 9, 2024
b68966e
[wgpu-core] use the view's format not the texture's format
teoxoy Jul 10, 2024
0ace081
update `target_pixel_byte_cost` and `target_component_alignment`
teoxoy Jul 10, 2024
4349e20
Expose adapter driver version for DX12 backend (#5927)
xiaopengli89 Jul 10, 2024
ef0ce05
[wgpu-core] fix `.zip()` usages
teoxoy Jul 10, 2024
b5c33fc
[wgpu] Reorganize buffer mapping docs. Make example code work.
jimblandy Jul 10, 2024
ee16de1
clippy: Fix `doc_lazy_continuation` lints (#5935)
waywardmonkeys Jul 11, 2024
6349250
naga: Fix reference to `serde` feature.
waywardmonkeys Jul 11, 2024
9796766
Changelog cleanup round (#5936)
Wumpf Jul 11, 2024
8fd08ac
Use `derive` feature on `serde` rather than `serde_derive`
waywardmonkeys Jul 11, 2024
750f72a
wgc: Use explicit feature for `raw-window-handle`
waywardmonkeys Jul 11, 2024
349f182
[d3d12] Drop resource before free suballocation (#5943)
xiaopengli89 Jul 11, 2024
a0c185a
[wgpu-core] fix trying to create 0 sized staging buffers when creatin…
teoxoy Jul 11, 2024
4d285d8
remove the `Mutex` around `StagingBuffer`'s internal buffer
teoxoy Jul 11, 2024
a8b0f2f
remove device arg from `StagingBuffer.flush()`
teoxoy Jul 11, 2024
9a7f44b
make `StagingBuffer` creation a method
teoxoy Jul 11, 2024
5e2df14
use `StagingBuffer.flush()` in `Buffer.unmap_inner()`
teoxoy Jul 11, 2024
26f65dd
[wgpu-hal] remove return type from `Device.unmap_buffer()`
teoxoy Jul 11, 2024
2f282cd
remove `instance_flags` arg from `StagingBuffer::new`
teoxoy Jul 11, 2024
347d902
introduce `FlushedStagingBuffer`
teoxoy Jul 12, 2024
6f16ea4
make the `StagingBuffer` implementation more robust
teoxoy Jul 12, 2024
17fcb19
[naga, hal] miscellaneous fixes for Atomic64 support (#5952)
JMS55 Jul 14, 2024
586215a
build(deps): bump crate-ci/typos from 1.22.9 to 1.23.1 (#5922)
dependabot[bot] Jul 14, 2024
d3edbc5
Compute pass benchmark (#5767)
Wumpf Jul 14, 2024
12e07eb
build(deps): bump the patch-updates group across 1 directory with 23 …
dependabot[bot] Jul 14, 2024
05c0656
[core] Correct docs for `LifetimeTracker` and its `mapped` field.
jimblandy Jul 14, 2024
d02e294
[core] Correctly check mipmap-filtering samplers against the layout.
jimblandy Jul 14, 2024
1b4e8ad
spv-out: fix acceleration structure in a function argument
kvark Jul 15, 2024
95c604e
build(deps): bump the patch-updates group with 6 updates (#5959)
dependabot[bot] Jul 15, 2024
f44f52a
build(deps): bump crate-ci/typos from 1.23.1 to 1.23.2 (#5958)
dependabot[bot] Jul 15, 2024
32acb20
docs(CHANGELOG): backport 0.19.5 entries (#5966)
ErichDonGubler Jul 16, 2024
167f005
[tests] delete outdated comment on `DEVICE_DESTROY_THEN_MORE` test (#…
teoxoy Jul 16, 2024
a3d2d31
[test] allow WARP to run the zero-init workgroup memory test (#5968)
teoxoy Jul 16, 2024
241b52f
[example] add instructions to halmark
teoxoy Jul 17, 2024
7e112ca
[wgpu-core] fix length of copy in `queue_write_texture` (#5973)
teoxoy Jul 17, 2024
91924fb
[wgpu-core] make `implicit_pipeline_ids` arg optional for users that …
teoxoy Jul 17, 2024
69a1134
[wgpu] remove `trace` feature temporarily (#5975)
teoxoy Jul 17, 2024
a47ed5d
[hal doc] Note `wgpu_hal::Queue::submit`'s expectations for `Fence`.
jimblandy Jul 17, 2024
2bc328c
[hal, core] Introduce `wgpu_hal::AtomicFenceValue`, and use it.
jimblandy Jul 17, 2024
aeb2067
[core] Make `poll(Wait)` not hang after bad command submission.
jimblandy Jul 17, 2024
911d28f
add a few missing changelog entries
teoxoy Jul 18, 2024
7761b57
move same device checks in `render_pass_end`
teoxoy Jul 17, 2024
2f7860b
move same device check in `compute_pass_end_impl`
teoxoy Jul 17, 2024
63303d4
add missing same device checks
teoxoy Jul 17, 2024
ed67ff2
[deno] remove `assertDeviceMatch`
teoxoy Jul 17, 2024
f767220
remove same device check from `create_texture_binding`
teoxoy Jul 18, 2024
77e45d4
add missing device valid check in `create_texture_view`
teoxoy Jul 18, 2024
9a0adef
use `ManuallyDrop` instead of `Option` for `PendingWrites`
teoxoy Jul 18, 2024
6a1432c
chore: release 22.0.0
ErichDonGubler Jul 17, 2024
e883fa7
docs(CHANGELOG): add `Unreleased` section
ErichDonGubler Jul 17, 2024
278d278
chore: remove non-existent `wgpu-example` workspace dep.
ErichDonGubler Jul 17, 2024
3c3b532
Remove latest_submission_index (#5976)
cwfitzgerald Jul 18, 2024
80921f4
Fix Codecov Timeout Issues (#5985)
cwfitzgerald Jul 18, 2024
8aed6ed
Update gpu-allocator dependency to 0.27 (#5982)
nical Jul 18, 2024
20973d1
Fix profiling with tracy. (#5988)
waywardmonkeys Jul 19, 2024
bc7622f
Expose GPU allocation reports in wgpu, wgpu-core and wgpu-hal
nical Jul 18, 2024
6cd3874
Remove vertex_pulling_transfrom from PipelineCompilationOptions.
bradwerth Jun 4, 2024
b5934e8
Disable wgpu-core documentation as a workaround for #4905.
kpreid Jul 18, 2024
56d418f
Partial revert "disable rustdoc in CI (#5839)"
kpreid Jul 19, 2024
7a73c75
Make RequestDeviceError (de)serializable
sagudev Jul 19, 2024
d03b7e2
Make RequestAdapterError (de)serializable
sagudev Jul 19, 2024
fc87033
Make BufferAccessError (de)serializable
sagudev Jul 19, 2024
c20946d
wgpu-types: Use explicit feature for `serde`
waywardmonkeys Jul 19, 2024
cf57982
Remove `allow(unknown_lints)` and `clippy::if_then_panic` (#6000)
waywardmonkeys Jul 20, 2024
164b7bd
Split `wgpu` Crate into Modules (#5998)
cwfitzgerald Jul 20, 2024
c0e7c1e
Bump core MSRV to 1.76
Wumpf Jul 20, 2024
5a0e218
Print requested and supported usages on UnsupportedUsage error (#6007)
VladasZ Jul 22, 2024
101c996
build(deps): bump the patch-updates group with 15 updates (#6008)
dependabot[bot] Jul 22, 2024
205f1e3
[wgpu-core] fix length of copy in `queue_write_texture` #2
teoxoy Jul 22, 2024
34d492a
Reexport InternalCounters, HalCounters and CoreCounters in wgpu
nical Jul 23, 2024
ebb011f
[core] Use `ManuallyDrop` for `wgpu_core::device::Queue::raw`.
jimblandy Jul 22, 2024
b350ca4
style: use uppercase for `SAFETY` comments
ErichDonGubler Jul 22, 2024
6670964
style: remove trailing colons in `Safety` section names
ErichDonGubler Jul 22, 2024
6d7975e
[naga hlsl-out glsl-out] Work around backend loop/switch bugs.
Imberflur Apr 25, 2024
0aca442
typos: More precise config, remove refs to "implace" (#6018)
waywardmonkeys Jul 24, 2024
9b680e6
Undo doing less bench iterations under `cfg(test)` (#6021)
Wumpf Jul 24, 2024
7b2e08f
refactor: satisfy `clippy::missing_transmute_annotations` (#6024)
ErichDonGubler Jul 24, 2024
4af1991
build(deps): bump crate-ci/typos from 1.23.2 to 1.23.3 (#6028)
dependabot[bot] Jul 24, 2024
e216566
feat(shader)!: make `ProgrammableStage::entry_point` optional
ErichDonGubler Jan 30, 2024
7446790
Fix a few entry_point parameters
nical Jul 24, 2024
86507f3
Reduce the number of iterations in benchmarks to a small number when …
nical Jul 24, 2024
380387e
refactor(const_eval): derive `Debug` for component-wise `enum`s
ErichDonGubler Jan 19, 2024
3650f90
refactor(const_eval): derive `PartialEq` for testing in component-wis…
ErichDonGubler Jan 19, 2024
c5fce7b
refactor(naga): rename `MathFunction::FindMsb` to `FirstLeadingBit`
ErichDonGubler Jan 19, 2024
5b44baa
feat(const_eval): impl. `firstLeadingBit`
ErichDonGubler Jan 19, 2024
2f7c87f
refactor(naga): rename `MathFunction::FindLsb` to `FirstTrailingBit`
ErichDonGubler Jan 19, 2024
a220fcf
feat(const_eval): impl. `firstTrailingBit`
ErichDonGubler Jan 26, 2024
fa93676
docs(CHANGELOG): add entry for const. eval of `first{Leading,Trailing…
ErichDonGubler Jul 23, 2024
62333a5
chore: fix some comments (#6033)
renshuncui Jul 24, 2024
ea81a24
naga: Remove feature `std` for `indexmap`
waywardmonkeys Jul 23, 2024
4f02057
Convert some module doc comments
waywardmonkeys Jul 20, 2024
2897fb5
Error instead of panic in check bind (#6012)
sagudev Jul 24, 2024
06649a3
Fix a `clippy::doc_lazy_continuation` lint (#6036)
waywardmonkeys Jul 24, 2024
723995d
refactor: warn on and satisfy `clippy::{ptr_as_ptr,ref_as_ptr}` in `w…
ErichDonGubler Jul 24, 2024
65b6e15
chore: satisfy `clippy::unused_qualifications`
ErichDonGubler Jul 24, 2024
54fb4cc
refactor(naga)!: remove `Function::locals`, migrate docs to `Expressi…
ErichDonGubler Jul 5, 2024
6b3e039
refactor(naga)!: remove `ExpressionTracer::overrides`
ErichDonGubler Jul 5, 2024
591e1d2
refactor(naga)!: remove `FunctionTracer::overrides`
ErichDonGubler Jul 5, 2024
2611d18
gles/wgl: Migrate from ancient/unmaintained `winapi` to `windows-rs`
MarijnS95 Jul 21, 2024
03f6d24
deduplicate derived BGLs
teoxoy Jul 25, 2024
d659a41
Merge pull request #3 from Vecvec/ray-tracing-updated
atlv24 Jul 26, 2024
d3c38a4
Fix AnyDevice drop implementation dropping the wrong thing (#6052)
Wumpf Jul 26, 2024
1f4f675
[naga] add back `PartialEq` derives for some types
teoxoy Jul 25, 2024
3166d37
Use workspace dependencies more. (#6020)
waywardmonkeys Jul 26, 2024
339ecf3
Fix error message in create_render_pass (#6041)
matthew-wong1 Jul 26, 2024
ccd6d2c
remove `BoundsCheckPolicies.image_store`
teoxoy Jun 26, 2024
55ae943
build(deps): bump the patch-updates group across 1 directory with 22 …
dependabot[bot] Jul 27, 2024
d40b0fc
deduplicate code shared between command_encoder_build_acceleration_st…
Vecvec Jul 28, 2024
cafc0b0
clippy
Vecvec Jul 29, 2024
7462754
Remove `'de: 'static"` serde bound and replace `&'static str` with `C…
sagudev Jul 29, 2024
3eb3595
build(deps): bump crate-ci/typos from 1.23.3 to 1.23.5 (#6058)
dependabot[bot] Jul 29, 2024
69eea63
build(deps): bump the patch-updates group with 2 updates (#6059)
dependabot[bot] Jul 29, 2024
b145250
[test] remove the workaround that keeps resources alive from the poll…
teoxoy Jul 25, 2024
1cb7eba
[wgpu-hal] replace `Instance.destroy_surface()` with `Drop` impls on …
teoxoy Jul 3, 2024
f3e8e59
remove `Hub.surface_unconfigure()` since the `Hub` reference was unused.
teoxoy Jul 3, 2024
d1da445
remove `Global.clear_backend()`
teoxoy Jul 3, 2024
2ea081f
remove waiting functionality from `Global.{buffer,texture,texture_vie…
teoxoy Jul 9, 2024
7502e65
remove unused `Global.device_get_buffer_sub_data`
teoxoy Jul 12, 2024
650054b
[player] simplify sync buffer writing
teoxoy Jul 12, 2024
76f9b2f
use `ManuallyDrop` for `Destroyed{Buffer,Texture}`
teoxoy Jul 12, 2024
6351a75
remove implemented TODO
teoxoy Jul 18, 2024
bfad205
Reduced verbosity for 'Device::maintain: waiting for submission index…
AthosOfAthos Jul 30, 2024
7ff80d6
[naga] Use cfg aliases to enable `naga::back::continue_forward`.
jimblandy Jul 30, 2024
9c6ae1b
Log spring cleaning (#6065)
nical Jul 31, 2024
a4e7a29
[tests] remove `Arc` around device field of `TestingContext`
teoxoy Aug 2, 2024
f192174
remove `Tracker.add_from_render_bundle`
teoxoy Aug 2, 2024
14170fd
remove unused `RenderBundleScope.query_sets`
teoxoy Aug 2, 2024
3a5ad19
remove all internal `BindGroupState` `Mutex`es
teoxoy Aug 2, 2024
a3142ad
don't optimize `BindGroupStates.{views,samplers}`
teoxoy Aug 2, 2024
5cb1be6
refactor the `StatelessTracker` to hold a `Vec` of `Arc`s
teoxoy Aug 2, 2024
826e371
remove all internal `RenderBundleScope` `RwLock`s
teoxoy Aug 2, 2024
62af9d7
rename `{Buffer,Texture}BindGroupState`'s `add_single` to `insert_sin…
teoxoy Aug 2, 2024
4e777bd
merge the texture and texture view trackers of `BindGroupStates`
teoxoy Aug 2, 2024
7b4cbc2
add comments in `BindGroupStates.optimize`
teoxoy Aug 3, 2024
8a0d1e1
build(deps): bump EmbarkStudios/cargo-deny-action from 1 to 2 (#6077)
dependabot[bot] Aug 5, 2024
e0bc306
build(deps): bump the patch-updates group with 12 updates (#6079)
dependabot[bot] Aug 5, 2024
9619a43
Add reorder/add limits in `check_limit` to match `wgt::Limits`
sagudev Aug 3, 2024
de960cc
Handle TooManyAttachments in wgpu-core (#6076)
sagudev Aug 5, 2024
8c7c5c4
decouple device and queue IDs
teoxoy Aug 2, 2024
594476c
Check Opengl version is 3.3+ before creating a GL context over a GL E…
Rapdorian Aug 6, 2024
09cc4d2
remove `Labeled` supertrait of `Trackable`
teoxoy Aug 7, 2024
781b54a
remove `TrackingData` from resources that are not tracked
teoxoy Aug 7, 2024
36c998a
change `Device.create_bind_group_layout` to return an `Arc<BindGroupL…
teoxoy Aug 5, 2024
47465dd
change `Device.create_pipeline_layout` to return an `Arc<PipelineLayo…
teoxoy Aug 5, 2024
9ce1772
change `Device.create_pipeline_cache` to return an `Arc<PipelineCache…
teoxoy Aug 5, 2024
d8b1c57
change `Device.create_command_encoder` to return an `Arc<CommandBuffe…
teoxoy Aug 7, 2024
f6a3eef
change `Device.create_shader_module` to return an `Arc<ShaderModule<A>`
teoxoy Aug 7, 2024
0cb14f5
Merge pull request #4 from Vecvec/ray-tracing-refactor
atlv24 Aug 9, 2024
34b0df2
Support `texture-compression-bc-sliced-3d` in wgpu (#5751)
mehmetoguzderin Aug 10, 2024
28be38c
build(deps): bump crate-ci/typos from 1.23.5 to 1.23.6 (#6078)
dependabot[bot] Aug 11, 2024
28e15dc
build(deps): bump the patch-updates group with 13 updates (#6102)
dependabot[bot] Aug 12, 2024
94f54b3
Add a separate pipeline constants error (#6094)
teoxoy Aug 12, 2024
5617f0f
call `flush_mapped_ranges` when unmapping write-mapped buffers
teoxoy Aug 7, 2024
f0875e8
remove `Buffer.sync_mapped_writes`
teoxoy Aug 7, 2024
a6bc2f6
fix check for `flush_mapped_ranges` in `map_buffer`
teoxoy Aug 7, 2024
b594497
[gl] fix usage of `glFlushMappedBufferRange`
teoxoy Aug 8, 2024
7c917ab
[gl] gate usage of `glFlushMappedBufferRange`
teoxoy Aug 8, 2024
cf5706c
use `Device.raw()` instead of `Device.raw.as_ref().unwrap()`
teoxoy Aug 7, 2024
b0cc0d2
use `QuerySet.raw()` instead of `QuerySet.raw.as_ref().unwrap()`
teoxoy Aug 7, 2024
c1bc086
use `ManuallyDrop` for remaining resources
teoxoy Aug 7, 2024
728b288
use `ManuallyDrop` for `Device.zero_buffer`
teoxoy Aug 7, 2024
19843c9
use `ManuallyDrop` for `Device.fence`
teoxoy Aug 7, 2024
ce9c9b7
remove `Option` around `A::SurfaceTexture`
teoxoy Aug 7, 2024
1aaaec2
use `ManuallyDrop` for texture views of `TextureClearMode`
teoxoy Aug 7, 2024
c72bc7b
remove unnecessary `RwLock` from `Texture.clear_mode`
teoxoy Aug 7, 2024
b1eb6db
refactor: satisfy `clippy::manual_bits`
ErichDonGubler Aug 12, 2024
ce23c02
chore(naga): remove dead `"validation"` feat. refs.
ErichDonGubler Aug 12, 2024
7f881bd
chore(naga): remove broken `Unsupported64Bit` tests
ErichDonGubler Aug 12, 2024
22b8f50
chore: satisfy `unused_qualifications` lint
ErichDonGubler Aug 12, 2024
bf051fb
refactor(naga): use same Firefox commentary for `rust-version`
ErichDonGubler Aug 12, 2024
8231d31
chore: update out-of-date docs build fix expectation
ErichDonGubler Aug 12, 2024
5533c37
chore: satisfy `clippy::collapsible_match`
ErichDonGubler Aug 12, 2024
c6a3d92
`Rg11b10Float` -> `Rg11b10UFloat` and deduplicate entries in `TEXTURE…
sagudev Aug 13, 2024
d2508d9
introduce DynResource & DynBuffer as first user
Wumpf Jul 10, 2024
cda9d9a
Buffer bindings no longer depend on hal api struct, but directly on b…
Wumpf Jul 14, 2024
a4d9d38
BufferBarrier no longer depend on hal api struct, but directly on buf…
Wumpf Jul 14, 2024
256ec6e
Introduce DynCommandEncoder, implement index & vertex buffer ops on it
Wumpf Jul 14, 2024
9b20fd8
DynCommandEncoder implement begin/end encoding, debug markers, variou…
Wumpf Jul 15, 2024
f8871e6
introduce DynQuerySet, associated DynCommandEncoder methods
Wumpf Jul 15, 2024
50a1811
Introduce DynPipelineLayout & DynBindGroup
Wumpf Jul 15, 2024
fc764b4
Introduce DynComputePipeline & DynRenderPipeline
Wumpf Jul 15, 2024
bea9a10
fold ComputePassTimestampWrites & RenderPassTimestampWrites and make …
Wumpf Jul 15, 2024
bdf6710
introduce DynTexture & DynTextureView
Wumpf Jul 17, 2024
a47a0cb
render/compute pass descriptors work now with dyn types
Wumpf Jul 17, 2024
eeaf277
implement begin/end render/computepass for dyncommandencoder
Wumpf Jul 20, 2024
39b4082
implement transition_textures for DynCommandEncoder
Wumpf Jul 20, 2024
c02ee62
buffer / texture copy operations for DynCommandEncoder
Wumpf Jul 20, 2024
b7e11c7
texture & buffer transitioning always uses DynCommandEncoder now
Wumpf Jul 20, 2024
add54f1
Introduce DynDevice
Wumpf Jul 20, 2024
b4c6741
add most remaining dyn type traits
Wumpf Jul 20, 2024
a9cb7fc
impl DynShaderModule for all backends
Wumpf Jul 20, 2024
df5cc12
impl DynCommandBuffer
Wumpf Jul 21, 2024
3faed2b
Device now has to implement DynResource
Wumpf Jul 21, 2024
1d19a20
impl DynFence for all fences
Wumpf Jul 21, 2024
70f7641
impl DynSurfaceTexture for all surface textures
Wumpf Jul 21, 2024
4e57213
introduce DynSurface
Wumpf Jul 21, 2024
72f30a3
introduce DynQueue
Wumpf Jul 21, 2024
b599d97
DynDevice buffer operations
Wumpf Jul 21, 2024
ea0df25
DynDevice create/destroy for texture/textureview/sampler
Wumpf Jul 24, 2024
05a0933
DynDevice create/destroy command encoder
Wumpf Jul 27, 2024
1da319f
DynDevice create/destroy bind group layout
Wumpf Jul 27, 2024
33f57e2
DynDevice create/destroy pipeline layout
Wumpf Jul 27, 2024
276753f
DynDevice create/destroy bind group
Wumpf Jul 27, 2024
ad5c7fe
DynDevice create/destroy ShaderModule
Wumpf Jul 27, 2024
3932f8b
DynDevice create/destroy compute/render pipeline
Wumpf Jul 28, 2024
4d355bf
DynDevice pipeline cache
Wumpf Jul 28, 2024
84c4811
DynDevice create/destroy query set
Wumpf Jul 28, 2024
dbf9aea
DynDevice fence
Wumpf Jul 28, 2024
522b98c
DynDevice wait/capture/pipeline_cache_get_data
Wumpf Jul 28, 2024
9e1f148
DynDevice acceleration structure handling
Wumpf Jul 28, 2024
1a9170e
DynDevice exit, counters, report
Wumpf Jul 28, 2024
d87aa36
DynCommandencoder end_encoding, reset_all
Wumpf Jul 28, 2024
27944de
DynCommandEncoder acceleration structure building
Wumpf Jul 28, 2024
99ffc12
remove unnecessary debug constraints from Api (handled by Dyn traits)
Wumpf Jul 28, 2024
6f01cbf
introduce DynAdapter
Wumpf Aug 4, 2024
5b9198f
introduce DynInstance
Wumpf Aug 4, 2024
7c7e416
The big unraveling: core device now has a boxed `DynDevice`, ripple e…
Wumpf Jul 10, 2024
04cadfb
Core's Surface, Instance and Adapter use now dynamic hal types
Wumpf Aug 4, 2024
3181251
Core adapter no longer uses any generics
Wumpf Aug 4, 2024
24498f0
The second unraveling: hub and all types on it are generic free!
Wumpf Aug 4, 2024
1bfe884
ignore 'arc instead of rc' warnings on wasm
Wumpf Aug 10, 2024
9794f33
Handle webgl's `queue_copy_external_image_to_texture`
Wumpf Aug 10, 2024
0287eaf
Remove `gfx_select`.
Wumpf Aug 6, 2024
0fb772b
remove dyn render & compute pass
Wumpf Aug 6, 2024
ab17d29
re-enable docs for wgpu-core
Wumpf Aug 10, 2024
92ecafe
changelog entry
Wumpf Aug 10, 2024
523756a
Merge remote-tracking branch 'refs/remotes/gfx-rs/trunk' into ray-tra…
Vecvec Aug 14, 2024
9706f3c
fix merge
Vecvec Aug 14, 2024
49cfa7d
fix warnings
Vecvec Aug 14, 2024
2810f13
clippy & fmt
Vecvec Aug 14, 2024
7866557
re-add matching to get_raw_tlas_instance_size and tlas_instance_into_…
Vecvec Aug 15, 2024
af183c5
fmt
Vecvec Aug 15, 2024
222cfb7
Merge pull request #5 from Vecvec/ray-tracing-updated
atlv24 Aug 16, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 1 addition & 9 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,10 +1,2 @@
[alias]
xtask = "run --manifest-path xtask/Cargo.toml"

[build]
rustflags = [
"--cfg=web_sys_unstable_apis"
]
rustdocflags = [
"--cfg=web_sys_unstable_apis"
]
xtask = "run --manifest-path xtask/Cargo.toml --"
14 changes: 12 additions & 2 deletions .config/nextest.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,17 @@
[profile.default]
slow-timeout = { period = "45s", terminate-after = 2 }

# Use two threads for tests with "2_threads" in their name
# Use two threads for tests with "2 threads" in their name
[[profile.default.overrides]]
filter = 'test(~2_threads)'
filter = 'test(~2_threads) | test(~2 threads)'
threads-required = 2

# Use four threads for tests with "4 threads" in their name
[[profile.default.overrides]]
filter = 'test(~4_threads) | test(~4 threads)'
threads-required = 4

# Use eight threads for tests with "8 threads" in their name
[[profile.default.overrides]]
filter = 'test(~8_threads) | test(~8 threads)'
threads-required = 8
9 changes: 8 additions & 1 deletion .deny.toml
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
[bans]
multiple-versions = "deny"
skip-tree = [
# We never enable loom in any of our dependencies but it causes dupes
{ name = "loom", version = "0.7.2" },
{ name = "windows-sys", version = "0.45" },
{ name = "winit", version = "0.27.5" },
{ name = "winit", version = "0.27" },
{ name = "winit", version = "0.29" },
{ name = "rustc_version", version = "0.2.3" },
{ name = "sourcemap", version = "7.1.1" },
]
skip = [
{ name = "hlsl-snapshots", version = "0.1.0" },
# Strum uses an old version
{ name = "heck", version = "0.4.0" },
]
wildcards = "deny"
allow-wildcard-paths = true
Expand All @@ -19,6 +25,7 @@ allow = [
"BSD-3-Clause",
"CC0-1.0",
"ISC",
"MPL-2.0",
"MIT",
"MIT-0",
"Unicode-DFS-2016",
Expand Down
1 change: 1 addition & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
use nix
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,8 @@
<<<<<<< HEAD
*.mtl binary -diff
*.obj binary -diff
=======
*.mtl binary
*.obj binary
wgpu/src/backend/webgpu/webgpu_sys/** linguist-generated=true
>>>>>>> trunk
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ updates:
interval: weekly
# This allows dependabot to update _all_ lockfile packages.
#
# These will be grouped into the existing group update PRs, so shoudn't generate additional jobs.
# These will be grouped into the existing group update PRs, so shouldn't generate additional jobs.
allow:
# Allow both direct and indirect updates for all packages
- dependency-type: "all"
Expand Down
42 changes: 30 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,13 @@ env:
#
# This needs to be newer to work around https://github.com/gfx-rs/wgpu/issues/4905.
#
# Once 1.76 coes out, we can use that instead of nightly.
# Once this fix hits stable Rust, we can use that instead of nightly.
DOCS_RUST_VERSION: "nightly-2023-12-17"
# This is the MSRV used by `wgpu` itself and all surrounding infrastructure.
REPO_MSRV: "1.71"
REPO_MSRV: "1.76"
# This is the MSRV used by the `wgpu-core`, `wgpu-hal`, and `wgpu-types` crates,
# to ensure that they can be used with firefox.
CORE_MSRV: "1.70"
CORE_MSRV: "1.76"

#
# Environment variables
Expand All @@ -55,10 +55,11 @@ env:
RUST_LOG: info
RUST_BACKTRACE: full
PKG_CONFIG_ALLOW_CROSS: 1 # allow android to work
RUSTFLAGS: --cfg=web_sys_unstable_apis -D warnings
RUSTDOCFLAGS: --cfg=web_sys_unstable_apis -D warnings
RUSTFLAGS: -D warnings
RUSTDOCFLAGS: -D warnings
WASM_BINDGEN_TEST_TIMEOUT: 300 # 5 minutes
CACHE_SUFFIX: c # cache busting
WGPU_TESTING: true

# We distinguish the following kinds of builds:
# - native: build for the same target as we compile on
Expand All @@ -78,6 +79,7 @@ jobs:
# runtime is normally 2-8 minutes
#
# currently high due to documentation time problems on mac.
# https://github.com/rust-lang/rust/issues/114891
timeout-minutes: 30

strategy:
Expand Down Expand Up @@ -225,10 +227,24 @@ jobs:
cargo clippy --target ${{ matrix.target }} --no-default-features

# Check with all features.
cargo clippy --target ${{ matrix.target }} --tests --all-features
cargo clippy --target ${{ matrix.target }} --tests --benches --all-features

# build docs
cargo +${{ env.DOCS_RUST_VERSION }} doc --target ${{ matrix.target }} --all-features --no-deps
# wgpu-core docs are not feasible due to <https://github.com/gfx-rs/wgpu/issues/4905>
#
# - name: check private item docs
# if: matrix.kind == 'native'
# shell: bash
# run: |
# set -e
#
# # wgpu_core package
# cargo +${{ env.DOCS_RUST_VERSION }} doc --target ${{ matrix.target }} \
# --package wgpu-core \
# --package wgpu-hal \
# --package naga \
# --all-features --no-deps --document-private-items

# We run minimal checks on the MSRV of the core crates, ensuring that
# its dependency tree does not cause issues for firefox.
Expand Down Expand Up @@ -344,7 +360,7 @@ jobs:
wasm-test:
# runtime is normally 2 minutes
timeout-minutes: 10

name: Test WebAssembly
runs-on: ubuntu-latest
needs: [check]
Expand Down Expand Up @@ -530,7 +546,8 @@ jobs:
cargo xtask test --llvm-cov

- name: check naga snapshots
run: git diff --exit-code -- naga/tests/out
# git diff doesn't check untracked files, we need to stage those then compare with HEAD.
run: git add . && git diff --exit-code HEAD naga/tests/out

- uses: actions/upload-artifact@v4
if: always() # We want artifacts even if the tests fail.
Expand All @@ -554,6 +571,7 @@ jobs:
if: steps.coverage.outcome == 'success'
with:
files: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}

doctest:
# runtime is normally 2 minutes
Expand Down Expand Up @@ -614,7 +632,7 @@ jobs:
cargo fmt --manifest-path xtask/Cargo.toml -- --check

- name: Check for typos
uses: crate-ci/typos@v1.18.2
uses: crate-ci/typos@v1.23.6

check-cts-runner:
# runtime is normally 2 minutes
Expand Down Expand Up @@ -663,7 +681,7 @@ jobs:
uses: actions/checkout@v4

- name: Run `cargo deny check`
uses: EmbarkStudios/cargo-deny-action@v1
uses: EmbarkStudios/cargo-deny-action@v2
with:
command: check advisories
arguments: --all-features --workspace
Expand All @@ -672,15 +690,15 @@ jobs:
cargo-deny-check-rest:
# runtime is normally 1 minute
timeout-minutes: 5

name: "cargo-deny"
runs-on: ubuntu-latest
steps:
- name: checkout repo
uses: actions/checkout@v4

- name: Run `cargo deny check`
uses: EmbarkStudios/cargo-deny-action@v1
uses: EmbarkStudios/cargo-deny-action@v2
with:
command: check bans licenses sources
arguments: --all-features --workspace
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
if: ${{ failure() }}

- name: Deploy the docs
uses: JamesIves/github-pages-deploy-action@v4.5.0
uses: JamesIves/github-pages-deploy-action@v4.6.3
if: github.ref == 'refs/heads/trunk'
with:
token: ${{ secrets.WEB_DEPLOY }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ env:
CARGO_INCREMENTAL: false
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
RUSTFLAGS: --cfg=web_sys_unstable_apis
RUSTFLAGS:

jobs:
publish:
Expand Down Expand Up @@ -41,7 +41,7 @@ jobs:
run: cargo xtask run-wasm --no-serve

- name: Deploy WebGPU examples
uses: JamesIves/github-pages-deploy-action@v4.5.0
uses: JamesIves/github-pages-deploy-action@v4.6.3
if: github.ref == 'refs/heads/trunk'
with:
token: ${{ secrets.WEB_DEPLOY }}
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ target/
# Output from capture example
wgpu/red.png

# Output from render_to_texture example
**/please_don't_git_push_me.png

# Output from invalid comparison tests
**/*-actual.png
**/*-difference.png
Expand All @@ -31,3 +34,6 @@ cts/

# Cached GPU config
.gpuconfig

# Temporary clone location for wasm-bindgen mirroring
wgpu/src/backend/webgpu/webgpu_sys/wasm_bindgen_clone_tmp
Loading