diff --git a/lib/bsp_loader/Cargo.toml b/lib/bsp_loader/Cargo.toml
index 60b3dfe..2cdbbc4 100644
--- a/lib/bsp_loader/Cargo.toml
+++ b/lib/bsp_loader/Cargo.toml
@@ -11,8 +11,8 @@ authors = ["Rhys Lloyd <krakow20@gmail.com>"]
 
 [dependencies]
 glam = "0.29.0"
-strafesnet_common = { path = "../common", registry = "strafesnet" }
-strafesnet_deferred_loader = { path = "../deferred_loader" }
+strafesnet_common = { version = "0.6.0", path = "../common", registry = "strafesnet" }
+strafesnet_deferred_loader = { version = "0.5.0", path = "../deferred_loader", registry = "strafesnet" }
 vbsp = "0.6.0"
 vmdl = "0.2.0"
 vpk = "0.2.0"
diff --git a/lib/common/Cargo.toml b/lib/common/Cargo.toml
index 4955bad..b9d5f7b 100644
--- a/lib/common/Cargo.toml
+++ b/lib/common/Cargo.toml
@@ -12,8 +12,8 @@ authors = ["Rhys Lloyd <krakow20@gmail.com>"]
 [dependencies]
 arrayvec = "0.7.4"
 bitflags = "2.6.0"
-fixed_wide = { path = "../fixed_wide", registry = "strafesnet", features = ["deferred-division","zeroes","wide-mul"] }
-linear_ops = { path = "../linear_ops", registry = "strafesnet", features = ["deferred-division","named-fields"] }
-ratio_ops = { path = "../ratio_ops", registry = "strafesnet" }
+fixed_wide = { version = "0.1.2", path = "../fixed_wide", registry = "strafesnet", features = ["deferred-division","zeroes","wide-mul"] }
+linear_ops = { version = "0.1.0", path = "../linear_ops", registry = "strafesnet", features = ["deferred-division","named-fields"] }
+ratio_ops = { version = "0.1.0", path = "../ratio_ops", registry = "strafesnet" }
 glam = "0.29.0"
 id = { version = "0.1.0", registry = "strafesnet" }
diff --git a/lib/deferred_loader/Cargo.toml b/lib/deferred_loader/Cargo.toml
index 0ab812d..94c0f45 100644
--- a/lib/deferred_loader/Cargo.toml
+++ b/lib/deferred_loader/Cargo.toml
@@ -10,4 +10,4 @@ authors = ["Rhys Lloyd <krakow20@gmail.com>"]
 # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 
 [dependencies]
-strafesnet_common = { path = "../common", registry = "strafesnet" }
+strafesnet_common = { version = "0.6.0", path = "../common", registry = "strafesnet" }
diff --git a/lib/fixed_wide/Cargo.toml b/lib/fixed_wide/Cargo.toml
index 751077d..236bcec 100644
--- a/lib/fixed_wide/Cargo.toml
+++ b/lib/fixed_wide/Cargo.toml
@@ -17,4 +17,4 @@ zeroes=["dep:arrayvec"]
 bnum = "0.12.0"
 arrayvec = { version = "0.7.6", optional = true }
 paste = "1.0.15"
-ratio_ops = { path = "../ratio_ops", registry = "strafesnet", optional = true }
+ratio_ops = { version = "0.1.0", path = "../ratio_ops", registry = "strafesnet", optional = true }
diff --git a/lib/linear_ops/Cargo.toml b/lib/linear_ops/Cargo.toml
index f5c1bfb..ee027d7 100644
--- a/lib/linear_ops/Cargo.toml
+++ b/lib/linear_ops/Cargo.toml
@@ -14,8 +14,8 @@ fixed-wide=["dep:fixed_wide","dep:paste"]
 deferred-division=["dep:ratio_ops"]
 
 [dependencies]
-ratio_ops = { path = "../ratio_ops", registry = "strafesnet", optional = true }
-fixed_wide = { path = "../fixed_wide", registry = "strafesnet", optional = true }
+ratio_ops = { version = "0.1.0", path = "../ratio_ops", registry = "strafesnet", optional = true }
+fixed_wide = { version = "0.1.2", path = "../fixed_wide", registry = "strafesnet", optional = true }
 paste = { version = "1.0.15", optional = true }
 
 [dev-dependencies]
diff --git a/lib/rbx_loader/Cargo.toml b/lib/rbx_loader/Cargo.toml
index fb101f0..626ad21 100644
--- a/lib/rbx_loader/Cargo.toml
+++ b/lib/rbx_loader/Cargo.toml
@@ -18,7 +18,7 @@ rbx_dom_weak = { version = "2.7.0", registry = "strafesnet" }
 rbx_mesh = "0.3.1"
 rbx_reflection_database = { version = "0.2.10", registry = "strafesnet" }
 rbx_xml = { version = "0.13.3", registry = "strafesnet" }
-rbxassetid = { version = "0.1.0", path = "../rbxassetid" }
-roblox_emulator = { path = "../roblox_emulator", registry = "strafesnet" }
-strafesnet_common = { path = "../common", registry = "strafesnet" }
-strafesnet_deferred_loader = { path = "../deferred_loader" }
+rbxassetid = { version = "0.1.0", path = "../rbxassetid", registry = "strafesnet" }
+roblox_emulator = { version = "0.4.7", path = "../roblox_emulator", registry = "strafesnet" }
+strafesnet_common = { version = "0.6.0", path = "../common", registry = "strafesnet" }
+strafesnet_deferred_loader = { version = "0.5.0", path = "../deferred_loader", registry = "strafesnet" }
diff --git a/lib/snf/Cargo.toml b/lib/snf/Cargo.toml
index fdc242e..b6e8e79 100644
--- a/lib/snf/Cargo.toml
+++ b/lib/snf/Cargo.toml
@@ -8,4 +8,4 @@ edition = "2021"
 [dependencies]
 binrw = "0.14.0"
 id = { version = "0.1.0", registry = "strafesnet" }
-strafesnet_common = { path = "../common", registry = "strafesnet" }
+strafesnet_common = { version = "0.6.0", path = "../common", registry = "strafesnet" }