diff --git a/.zigversion b/.zigversion
index 27af068..a803cc2 100644
--- a/.zigversion
+++ b/.zigversion
@@ -1 +1 @@
-0.14.0-dev.2577+271452d22
+0.14.0
diff --git a/build.zig.zon b/build.zig.zon
index ab53031..791865c 100644
--- a/build.zig.zon
+++ b/build.zig.zon
@@ -1,5 +1,6 @@
 .{
-    .name = "zphysics",
+    .name = .zphysics,
+    .fingerprint = 0x1def6aac00c4909d,
     .version = "0.2.0-dev",
     .paths = .{
         "build.zig",
diff --git a/src/zphysics.zig b/src/zphysics.zig
index aa2e5e2..d51d385 100644
--- a/src/zphysics.zig
+++ b/src/zphysics.zig
@@ -3938,7 +3938,7 @@ fn zphysicsAlloc(size: usize) callconv(.C) ?*anyopaque {
 
     const ptr = state.?.mem_allocator.rawAlloc(
         size,
-        std.math.log2_int(u29, @as(u29, @intCast(mem_alignment))),
+        std.mem.Alignment.fromByteUnits(mem_alignment),
         @returnAddress(),
     );
     if (ptr == null) @panic("zphysics: out of memory");
@@ -3983,7 +3983,7 @@ fn zphysicsAlignedAlloc(size: usize, alignment: usize) callconv(.C) ?*anyopaque
 
     const ptr = state.?.mem_allocator.rawAlloc(
         size,
-        std.math.log2_int(u29, @as(u29, @intCast(alignment))),
+        std.mem.Alignment.fromByteUnits(alignment),
         @returnAddress(),
     );
     if (ptr == null) @panic("zphysics: out of memory");
@@ -4007,7 +4007,7 @@ fn zphysicsFree(maybe_ptr: ?*anyopaque) callconv(.C) void {
 
         state.?.mem_allocator.rawFree(
             mem,
-            std.math.log2_int(u29, @as(u29, @intCast(info.alignment))),
+            std.mem.Alignment.fromByteUnits(info.alignment),
             @returnAddress(),
         );
     }