diff --git a/Cargo.lock b/Cargo.lock
index 5edf965..3c3e827 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1,12 +1,12 @@
 # This file is automatically @generated by Cargo.
 # It is not intended for manual editing.
-version = 3
+version = 4
 
 [[package]]
 name = "ab_glyph"
-version = "0.2.28"
+version = "0.2.29"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "79faae4620f45232f599d9bc7b290f88247a0834162c4495ab2f02d60004adfb"
+checksum = "ec3672c180e71eeaaac3a541fbbc5f5ad4def8b747c595ad30d674e43049f7b0"
 dependencies = [
  "ab_glyph_rasterizer",
  "owned_ttf_parser",
@@ -480,9 +480,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.1.24"
+version = "1.1.23"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938"
+checksum = "3bbb537bb4a30b90362caddba8f360c0a56bc13d3a5570028e7197204cb54a17"
 dependencies = [
  "jobserver",
  "libc",
@@ -1522,7 +1522,7 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058"
 
 [[package]]
 name = "librashader"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "ash",
  "glob",
@@ -1561,7 +1561,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-cache"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "bincode",
  "blake3",
@@ -1577,9 +1577,10 @@ dependencies = [
 
 [[package]]
 name = "librashader-capi"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "ash",
+ "cc",
  "glow 0.14.1",
  "librashader",
  "objc2 0.5.2",
@@ -1593,7 +1594,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-cli"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "anyhow",
  "ash",
@@ -1623,7 +1624,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-common"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "ash",
  "glow 0.14.1",
@@ -1640,7 +1641,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-pack"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "anyhow",
  "base64 0.22.1",
@@ -1657,7 +1658,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-preprocess"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "encoding_rs",
  "glob",
@@ -1670,7 +1671,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-presets"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "glob",
  "librashader-common",
@@ -1686,7 +1687,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-reflect"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "bitflags 2.6.0",
  "bytemuck",
@@ -1707,7 +1708,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "arc-swap",
  "array-concat",
@@ -1723,7 +1724,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-d3d11"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "bytemuck",
@@ -1742,7 +1743,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-d3d12"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "array-init",
@@ -1768,7 +1769,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-d3d9"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "bytemuck",
@@ -1789,7 +1790,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-gl"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-init",
  "bytemuck",
@@ -1809,7 +1810,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-mtl"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "bytemuck",
@@ -1831,7 +1832,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-vk"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "ash",
@@ -1855,7 +1856,7 @@ dependencies = [
 
 [[package]]
 name = "librashader-runtime-wgpu"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 dependencies = [
  "array-concat",
  "bytemuck",
@@ -2316,12 +2317,9 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.20.1"
+version = "1.20.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1"
-dependencies = [
- "portable-atomic",
-]
+checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
 
 [[package]]
 name = "orbclient"
@@ -2353,9 +2351,9 @@ dependencies = [
 
 [[package]]
 name = "owned_ttf_parser"
-version = "0.24.0"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "490d3a563d3122bf7c911a59b0add9389e5ec0f5f0c3ac6b91ff235a0e6a7f90"
+checksum = "22ec719bbf3b2a81c109a4e20b1f129b5566b7dce654bc3872f6a05abf82b2c4"
 dependencies = [
  "ttf-parser",
 ]
@@ -2527,12 +2525,6 @@ version = "0.3.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2"
 
-[[package]]
-name = "portable-atomic"
-version = "1.9.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2"
-
 [[package]]
 name = "pp-rs"
 version = "0.2.1"
@@ -3055,9 +3047,9 @@ dependencies = [
 
 [[package]]
 name = "spirv-cross2"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "414b3818c6cc873baead8240dd4690052223c5bc982cb4093047a0b8fc839c45"
+checksum = "7c248b63ebea5a3153214091875d63cc0bacbe4743c13e20dc54bd73ba847972"
 dependencies = [
  "bitflags 2.6.0",
  "bytemuck",
@@ -3336,9 +3328,9 @@ dependencies = [
 
 [[package]]
 name = "ttf-parser"
-version = "0.24.1"
+version = "0.25.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5be21190ff5d38e8b4a2d3b6a3ae57f612cc39c96e83cedeaf7abc338a8bac4a"
+checksum = "5902c5d130972a0000f60860bfbf46f7ca3db5391eddfedd1b8728bd9dc96c0e"
 
 [[package]]
 name = "typenum"
diff --git a/librashader-cache/Cargo.toml b/librashader-cache/Cargo.toml
index f045321..56cf4c5 100644
--- a/librashader-cache/Cargo.toml
+++ b/librashader-cache/Cargo.toml
@@ -2,7 +2,7 @@
 name = "librashader-cache"
 edition = "2021"
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,8 +12,8 @@ description = "RetroArch shaders for all."
 
 [dependencies]
 serde = { version = "1.0" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1", features = ["serde"] }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0", features = ["serde"] }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
 platform-dirs = "0.3.0"
 blake3 = { version = "1.5.4" }
 thiserror = "1.0.38"
diff --git a/librashader-capi/Cargo.toml b/librashader-capi/Cargo.toml
index 4b3e899..b930a99 100644
--- a/librashader-capi/Cargo.toml
+++ b/librashader-capi/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-capi"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -44,10 +44,11 @@ sptr = "0.3.2"
 
 glow = { workspace = true, optional = true }
 ash = { workspace = true, optional = true }
+cc = "=1.1.23"
 
 [dependencies.librashader]
 path = "../librashader"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 default-features = false
 features = ["reflect", "presets", "preprocess"]
 
diff --git a/librashader-cli/Cargo.toml b/librashader-cli/Cargo.toml
index 2b0adaa..4d510af 100644
--- a/librashader-cli/Cargo.toml
+++ b/librashader-cli/Cargo.toml
@@ -2,7 +2,7 @@
 name = "librashader-cli"
 edition = "2021"
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -19,8 +19,8 @@ name = "librashader-cli"
 path = "src/cli/main.rs"
 
 [dependencies]
-librashader = { version = "0.5.0-rc.1", path = "../librashader", features = ["presets", "preprocess", "serde"], default-features = false }
-librashader-runtime = { version = "0.5.0-rc.1", path = "../librashader-runtime"}
+librashader = { version = "0.5.0", path = "../librashader", features = ["presets", "preprocess", "serde"], default-features = false }
+librashader-runtime = { version = "0.5.0", path = "../librashader-runtime"}
 wgpu = { version = "22", default-features = false, optional = true  }
 wgpu-types = { version = "22", optional = true }
 anyhow = "1.0.86"
diff --git a/librashader-common/Cargo.toml b/librashader-common/Cargo.toml
index 5e10ba4..24cbbb8 100644
--- a/librashader-common/Cargo.toml
+++ b/librashader-common/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-common"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
diff --git a/librashader-pack/Cargo.toml b/librashader-pack/Cargo.toml
index 07ed09a..e3f9b36 100644
--- a/librashader-pack/Cargo.toml
+++ b/librashader-pack/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "librashader-pack"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 edition = "2021"
 license = "MPL-2.0 OR GPL-3.0-only"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
@@ -11,8 +11,8 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1", features = ["serde"] }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1", features = ["serde"] }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0", features = ["serde"] }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0", features = ["serde"] }
 
 thiserror = "1.0.64"
 serde = { version = "1.0", features = ["derive"], optional = true }
diff --git a/librashader-preprocess/Cargo.toml b/librashader-preprocess/Cargo.toml
index cc2f12a..ddadb61 100644
--- a/librashader-preprocess/Cargo.toml
+++ b/librashader-preprocess/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-preprocess"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -14,7 +14,7 @@ description = "RetroArch shaders for all."
 [dependencies]
 thiserror = "1.0.37"
 nom = "7.1.1"
-librashader-common = { path = "../librashader-common", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", version = "0.5.0" }
 encoding_rs = "0.8.31"
 serde = { version = "1.0", optional = true }
 
diff --git a/librashader-presets/Cargo.toml b/librashader-presets/Cargo.toml
index c2c50c3..fe3bbd0 100644
--- a/librashader-presets/Cargo.toml
+++ b/librashader-presets/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-presets"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -15,7 +15,7 @@ description = "RetroArch shaders for all."
 thiserror = "1.0.37"
 nom = "7.1.1"
 nom_locate = "4.0.0"
-librashader-common = { path = "../librashader-common", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", version = "0.5.0" }
 num-traits = "0.2"
 once_cell = "1"
 # we don't need unicode
diff --git a/librashader-reflect/Cargo.toml b/librashader-reflect/Cargo.toml
index 4d7286a..6524f43 100644
--- a/librashader-reflect/Cargo.toml
+++ b/librashader-reflect/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-reflect"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -18,10 +18,10 @@ bytemuck = "1.13.0"
 thiserror = "1.0.37"
 bitflags = "2.4.2"
 
-librashader-common = { path = "../librashader-common", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
 
 spirv-cross2 = { workspace = true, optional = true }
 
diff --git a/librashader-runtime-d3d11/Cargo.toml b/librashader-runtime-d3d11/Cargo.toml
index b0fe6ee..72ab523 100644
--- a/librashader-runtime-d3d11/Cargo.toml
+++ b/librashader-runtime-d3d11/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-d3d11"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,13 +12,13 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["d3d11"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime", version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1", features = ["d3d"] }
+librashader-common = { path = "../librashader-common", features = ["d3d11"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime", version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0", features = ["d3d"] }
 
 thiserror = "1.0.37"
 bytemuck = "1.12.3"
diff --git a/librashader-runtime-d3d12/Cargo.toml b/librashader-runtime-d3d12/Cargo.toml
index 5797192..6cfc935 100644
--- a/librashader-runtime-d3d12/Cargo.toml
+++ b/librashader-runtime-d3d12/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-d3d12"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,13 +12,13 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["d3d12"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1", features = ["dxil"]  }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime", version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1", features = ["d3d"] }
+librashader-common = { path = "../librashader-common", features = ["d3d12"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0", features = ["dxil"]  }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime", version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0", features = ["d3d"] }
 
 thiserror = "1.0.37"
 
diff --git a/librashader-runtime-d3d9/Cargo.toml b/librashader-runtime-d3d9/Cargo.toml
index d008f4a..50d2edf 100644
--- a/librashader-runtime-d3d9/Cargo.toml
+++ b/librashader-runtime-d3d9/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-d3d9"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,13 +12,13 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["d3d9", "d3d11"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime", version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1", features = ["d3d"] }
+librashader-common = { path = "../librashader-common", features = ["d3d9", "d3d11"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime", version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0", features = ["d3d"] }
 
 thiserror = "1.0.37"
 bytemuck = "1.12.3"
diff --git a/librashader-runtime-gl/Cargo.toml b/librashader-runtime-gl/Cargo.toml
index 94fd4c1..21c12af 100644
--- a/librashader-runtime-gl/Cargo.toml
+++ b/librashader-runtime-gl/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-gl"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,13 +12,13 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["opengl"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", features = ["opengl"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0" }
 
 spirv-cross2 = { workspace = true, features = ["glsl"] }
 glow = { workspace = true}
diff --git a/librashader-runtime-mtl/Cargo.toml b/librashader-runtime-mtl/Cargo.toml
index ed483d1..c075e78 100644
--- a/librashader-runtime-mtl/Cargo.toml
+++ b/librashader-runtime-mtl/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-mtl"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -14,12 +14,12 @@ description = "RetroArch shaders for all."
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["metal"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", features = ["metal"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0" }
 
 thiserror = "1.0"
 array-concat = "0.5.2"
diff --git a/librashader-runtime-vk/Cargo.toml b/librashader-runtime-vk/Cargo.toml
index e2b469c..34cb3e9 100644
--- a/librashader-runtime-vk/Cargo.toml
+++ b/librashader-runtime-vk/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime-vk"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -14,13 +14,13 @@ description = "RetroArch shaders for all."
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["vulkan"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", features = ["vulkan"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0" }
 
 bytemuck = { version = "1.12.3", features = ["derive"] }
 thiserror = "1.0.37"
diff --git a/librashader-runtime-wgpu/Cargo.toml b/librashader-runtime-wgpu/Cargo.toml
index 9af8eec..9e84f55 100644
--- a/librashader-runtime-wgpu/Cargo.toml
+++ b/librashader-runtime-wgpu/Cargo.toml
@@ -2,7 +2,7 @@
 name = "librashader-runtime-wgpu"
 edition = "2021"
 
-version = "0.5.0-rc.1"
+version = "0.5.0"
 license = "MPL-2.0 OR GPL-3.0-only"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
@@ -14,13 +14,13 @@ description = "RetroArch shaders for all."
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-librashader-common = { path = "../librashader-common", features = ["wgpu"], version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1", features = ["wgsl"], default-features = false }
-librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", features = ["wgpu"], version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0", features = ["wgsl"], default-features = false }
+librashader-runtime = { path = "../librashader-runtime" , version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0" }
 
 wgpu = { workspace = true, default-features = false, features = ["wgsl"] }
 thiserror = "1.0.50"
diff --git a/librashader-runtime/Cargo.toml b/librashader-runtime/Cargo.toml
index 6ff6049..3b0b995 100644
--- a/librashader-runtime/Cargo.toml
+++ b/librashader-runtime/Cargo.toml
@@ -3,7 +3,7 @@ name = "librashader-runtime"
 edition = "2021"
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -12,11 +12,11 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-pack = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
+librashader-common = { path = "../librashader-common", version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-pack = { path = "../librashader-pack", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
 bytemuck = {  version = "1.12.3", features = ["derive"] }
 num-traits = "0.2.15"
 array-concat = "0.5.2"
diff --git a/librashader/Cargo.toml b/librashader/Cargo.toml
index f9999fb..2ddf3ed 100644
--- a/librashader/Cargo.toml
+++ b/librashader/Cargo.toml
@@ -4,7 +4,7 @@ edition = "2021"
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 license = "MPL-2.0 OR GPL-3.0-only"
-version = "0.5.0-rc.1"
+version = "0.5.0"
 authors = ["Ronny Chan <ronny@ronnychan.ca>"]
 repository = "https://github.com/SnowflakePowered/librashader"
 readme = "../README.md"
@@ -13,20 +13,20 @@ keywords = ["shader", "retroarch", "SPIR-V"]
 description = "RetroArch shaders for all."
 
 [dependencies]
-librashader-common = { path = "../librashader-common", version = "0.5.0-rc.1" }
-librashader-presets = { path = "../librashader-presets", version = "0.5.0-rc.1" }
-librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0-rc.1" }
-librashader-reflect = { path = "../librashader-reflect", version = "0.5.0-rc.1" }
-librashader-cache = { path = "../librashader-cache", version = "0.5.0-rc.1" }
-librashader-runtime  = { path = "../librashader-runtime", version = "0.5.0-rc.1" }
-librashader-pack  = { path = "../librashader-pack", version = "0.5.0-rc.1" }
-librashader-runtime-d3d11  = { path = "../librashader-runtime-d3d11", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-d3d12  = { path = "../librashader-runtime-d3d12", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-d3d9  = { path = "../librashader-runtime-d3d9", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-gl = { path = "../librashader-runtime-gl", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-vk = { path = "../librashader-runtime-vk", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-mtl = { path = "../librashader-runtime-mtl", version = "0.5.0-rc.1", optional = true }
-librashader-runtime-wgpu = { path = "../librashader-runtime-wgpu", version = "0.5.0-rc.1", optional = true }
+librashader-common = { path = "../librashader-common", version = "0.5.0" }
+librashader-presets = { path = "../librashader-presets", version = "0.5.0" }
+librashader-preprocess = { path = "../librashader-preprocess", version = "0.5.0" }
+librashader-reflect = { path = "../librashader-reflect", version = "0.5.0" }
+librashader-cache = { path = "../librashader-cache", version = "0.5.0" }
+librashader-runtime  = { path = "../librashader-runtime", version = "0.5.0" }
+librashader-pack  = { path = "../librashader-pack", version = "0.5.0" }
+librashader-runtime-d3d11  = { path = "../librashader-runtime-d3d11", version = "0.5.0", optional = true }
+librashader-runtime-d3d12  = { path = "../librashader-runtime-d3d12", version = "0.5.0", optional = true }
+librashader-runtime-d3d9  = { path = "../librashader-runtime-d3d9", version = "0.5.0", optional = true }
+librashader-runtime-gl = { path = "../librashader-runtime-gl", version = "0.5.0", optional = true }
+librashader-runtime-vk = { path = "../librashader-runtime-vk", version = "0.5.0", optional = true }
+librashader-runtime-mtl = { path = "../librashader-runtime-mtl", version = "0.5.0", optional = true }
+librashader-runtime-wgpu = { path = "../librashader-runtime-wgpu", version = "0.5.0", optional = true }
 
 ash = { version = "0.38", optional = true }
 halfbrown = "0.2.4"