diff --git a/Cargo.lock b/Cargo.lock
index 2685773eb..c40e334fb 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -870,7 +870,7 @@ dependencies = [
 
 [[package]]
 name = "uefi"
-version = "0.30.0"
+version = "0.31.0"
 dependencies = [
  "bitflags 2.6.0",
  "cfg-if",
@@ -885,7 +885,7 @@ dependencies = [
 
 [[package]]
 name = "uefi-macros"
-version = "0.14.0"
+version = "0.15.0"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -896,7 +896,7 @@ dependencies = [
 
 [[package]]
 name = "uefi-raw"
-version = "0.6.0"
+version = "0.7.0"
 dependencies = [
  "bitflags 2.6.0",
  "ptr_meta",
diff --git a/book/src/tutorial/app.md b/book/src/tutorial/app.md
index e8b80832a..adfc58285 100644
--- a/book/src/tutorial/app.md
+++ b/book/src/tutorial/app.md
@@ -24,7 +24,7 @@ to your `Cargo.toml`. The resulting `Cargo.toml` should look like that:
 ```toml
 [dependencies]
 log = "0.4.21"
-uefi = { version = "0.30.0", features = [ "panic_handler", "logger" ] }
+uefi = { version = "0.31.0", features = [ "panic_handler", "logger" ] }
 ```
 
 Replace the contents of `src/main.rs` with this:
diff --git a/template/Cargo.toml b/template/Cargo.toml
index d42653118..2d6b3f013 100644
--- a/template/Cargo.toml
+++ b/template/Cargo.toml
@@ -5,4 +5,4 @@ edition = "2021"
 publish = false
 
 [dependencies]
-uefi = { version = "0.30.0", features = ["panic_handler"] }
+uefi = { version = "0.31.0", features = ["panic_handler"] }
diff --git a/uefi-macros/CHANGELOG.md b/uefi-macros/CHANGELOG.md
index 2b3ffb624..3ba8f832a 100644
--- a/uefi-macros/CHANGELOG.md
+++ b/uefi-macros/CHANGELOG.md
@@ -1,5 +1,8 @@
 # uefi-macros - [Unreleased]
 
+
+# uefi-macros - 0.15.0 (2024-08-20)
+
 ## Changed
 
 - The `entry` macro now accepts a function with zero arguments in addition to
diff --git a/uefi-macros/Cargo.toml b/uefi-macros/Cargo.toml
index df2c3fc35..e1ef9ffbf 100644
--- a/uefi-macros/Cargo.toml
+++ b/uefi-macros/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "uefi-macros"
-version = "0.14.0"
+version = "0.15.0"
 readme = "README.md"
 description = "Procedural macros for the `uefi` crate."
 
diff --git a/uefi-raw/CHANGELOG.md b/uefi-raw/CHANGELOG.md
index c42645e95..489bc8ca8 100644
--- a/uefi-raw/CHANGELOG.md
+++ b/uefi-raw/CHANGELOG.md
@@ -1,5 +1,8 @@
 # uefi-raw - [Unreleased]
 
+
+# uefi-raw - 0.7.0 (2024-08-20)
+
 ## Added
 - New `MemoryType` constants: `UNACCEPTED`, `MAX`, `RESERVED_FOR_OEM`, and
   `RESERVED_FOR_OS_LOADER`.
diff --git a/uefi-raw/Cargo.toml b/uefi-raw/Cargo.toml
index 5614d23ac..c567f81d1 100644
--- a/uefi-raw/Cargo.toml
+++ b/uefi-raw/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "uefi-raw"
-version = "0.6.0"
+version = "0.7.0"
 readme = "README.md"
 description = """
 Raw UEFI types and bindings for protocols, boot, and runtime services. This can
diff --git a/uefi/CHANGELOG.md b/uefi/CHANGELOG.md
index afd0113e2..b2d160994 100644
--- a/uefi/CHANGELOG.md
+++ b/uefi/CHANGELOG.md
@@ -1,5 +1,8 @@
 # uefi - [Unreleased]
 
+
+# uefi - 0.31.0 (2024-08-20)
+
 See [Deprecating SystemTable/BootServices/RuntimeServices][funcmigrate] for
 details of the new `system`/`boot`/`runtime` modules, and upcoming deprecations.
 
diff --git a/uefi/Cargo.toml b/uefi/Cargo.toml
index 7b4534204..dc5e1be0f 100644
--- a/uefi/Cargo.toml
+++ b/uefi/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "uefi"
-version = "0.30.0"
+version = "0.31.0"
 readme = "README.md"
 description = """
 This crate makes it easy to develop Rust software that leverages safe,
@@ -43,8 +43,8 @@ ptr_meta.workspace = true
 uguid.workspace = true
 cfg-if = "1.0.0"
 ucs2 = "0.3.3"
-uefi-macros = "0.14.0"
-uefi-raw = "0.6.0"
+uefi-macros = "0.15.0"
+uefi-raw = "0.7.0"
 qemu-exit = { version = "3.0.2", optional = true }
 
 [package.metadata.docs.rs]