Skip to content

Commit

Permalink
cargo: Replace metal-rs patch with git dependency
Browse files Browse the repository at this point in the history
`gpu-allocator` is a library crate, meaning that `[patch]`es don't
get applied when users depend on our crate, and falsely end up with
a broken build while our CI said everything was hunky dory (
#224).  Even
though we cannot normally have a direct `git` dependency as that blocks
us from publishing to crates.io, the current `gpu-allocator` release
(though only for Metal) is broken anyway.  It's relying on functionality
that has just now been merged upstream, but still has to make it into a
(followup patch) release.

What's worse, the harcoded hash that this was pointing to no longer
has a live reference on our fork (maybe due to a force-push), and the
CI is now failing to to fetch that commit by hash while build-testing
`gpu-allocator`.

Let's bump to a `git` dependency for now, and replace that as soon as we
have a workable solution, however that pans out.
  • Loading branch information
MarijnS95 committed May 24, 2024
1 parent cbf5299 commit 6cc9b92
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 6 deletions.
5 changes: 1 addition & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ egui = { version = ">=0.24, <=0.27", optional = true, default-features = false }
egui_extras = { version = ">=0.24, <=0.27", optional = true, default-features = false }

[target.'cfg(any(target_os = "macos", target_os = "ios"))'.dependencies]
metal = { version = "0.27.0", default-features = false, features = ["link", "dispatch"], optional = true }
metal = { version = "0.28.0", git = "https://github.com/gfx-rs/metal-rs", rev = "0d6214f", default-features = false, features = ["link", "dispatch"], optional = true }

[target.'cfg(windows)'.dependencies]
# Only needed for public-winapi interop helpers
Expand Down Expand Up @@ -96,6 +96,3 @@ metal = ["dep:metal"]
public-winapi = ["dep:winapi"]

default = ["d3d12", "vulkan"]

[patch.crates-io]
metal = { git = "https://github.com/Traverse-Research/metal-rs", rev = "a354c33" }
4 changes: 2 additions & 2 deletions src/vulkan/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ pub struct AllocatorCreateDesc {
/// let my_gpu_data: Vec<MyGpuData> = make_vertex_data();
/// ```
///
/// Depending on how the data we're copying will be used, the vulkan device may have a minimum
/// Depending on how the data we're copying will be used, the Vulkan device may have a minimum
/// alignment requirement for that data:
///
/// ```ignore
Expand Down Expand Up @@ -180,7 +180,7 @@ impl Allocation {
///
/// [`Slab`]: presser::Slab
// best to be explicit where the lifetime is coming from since we're doing unsafe things
// and relying on an inferred liftime type in the PhantomData below
// and relying on an inferred lifetime type in the PhantomData below
#[allow(clippy::needless_lifetimes)]
pub fn try_as_mapped_slab<'a>(&'a mut self) -> Option<MappedAllocationSlab<'a>> {
let mapped_ptr = self.mapped_ptr()?.cast().as_ptr();
Expand Down

0 comments on commit 6cc9b92

Please sign in to comment.