diff --git a/pages/site/releases/3.8.md b/pages/site/releases/3.8.md
index 6fd8f25..b908701 100644
--- a/pages/site/releases/3.8.md
+++ b/pages/site/releases/3.8.md
@@ -723,7 +723,7 @@
 
 ## Bugfix releases
 
-### 3.8.7 (In Development)
+### 3.8.8 (In Development)
 
 * Enhancements
 
@@ -749,10 +749,38 @@
 * Security Fixes
 
   * [Change 431197](https://gerrit-review.googlesource.com/431197):
-  Use constant-time comparison for hashed password validation, for increased security
+  Use constant-time comparison for hashed password validation, for increased security.
+
+* Performance fixes
+
+  * [Change 431017](https://gerrit-review.googlesource.com/431017):
+  Re-use revwalk for loading ChangeKindCache.
+
+  * [Change 431037](https://gerrit-review.googlesource.com/431037):
+  Stop calling `addPatchSets()` twice call when populating change query result.
+
+  * [Change 431039](https://gerrit-review.googlesource.com/431039):
+  Lazy load labelTypes when populating change query result.
+
+  * [Change 431040](https://gerrit-review.googlesource.com/431040):
+  Reduce duplicate work when a caller uses both `--patch-sets` and  `--current-patch-set`
+  in change query.
+
+  * [Change 431018](https://gerrit-review.googlesource.com/431018):
+  Clone `PatchSetAttribute` for `currentPatchSet` when populating change query result.
+
+    if both `--patch-sets` and `--current-patch-set` are given, populate the
+    `patchSetAttribute` for `currentPatchSet` using the fields already populated
+    or all patch sets.
 
 * Documentation Fixes
 
+  * [Issue 352081004](https://issues.gerritcodereview.com/issues/352081004):
+  Clarify that comment links work on html-escaped text.
+
+  * [Change 433917](https://gerrit-review.googlesource.com/433917):
+  Add warning about choosing Windows as server-side platform for running Gerrit.
+
   * [Change 430957](https://gerrit-review.googlesource.com/430957):
   Update `prolog-cookbook` documentation mentioning that adding a new `rules.pl` will
   result in a warning.
@@ -760,6 +788,57 @@
   * [Change 424997](https://gerrit-review.googlesource.com/424997):
   Fix name of `Gerrit-Has-Labels` email footer in documentation.
 
+* Plugin changes
+
+  * `replication` updated to 584aea1a
+
+    You can retrieve the full list of changes with:
+
+    ```shell
+    git log --no-merges --format=oneline 8fd3c27..584aea1a
+    ```
+
+    notable changes are:
+
+    * [Change 384754](https://gerrit-review.googlesource.com/c/plugins/replication/+/384754):
+    Avoid opportunity to inadvertently block the distributor.
+
+    * [Change 383694](https://gerrit-review.googlesource.com/c/plugins/replication/+/383694):
+    Reduced log level for Task deletion errors in MP setups.
+
+    * [Change 352174](https://gerrit-review.googlesource.com/c/plugins/replication/+/352174):
+    Reduced log level for no-op distributor push consolidations.
+
+* JGit changes
+
+  * [Change 433257](https://gerrit-review.googlesource.com/c/gerrit/+/433257) and
+    [Change 432237](https://gerrit-review.googlesource.com/c/gerrit/+/432237):
+    Update JGit to cfdfb01f4
+
+    You can retrieve the full list of changes with:
+
+    ```shell
+    git log --no-merges --format=oneline c0b415fb0..cfdfb01f4
+    ```
+
+    notable changes are:
+
+    * cfdfb01f4 RepoProject: read the 'dest-branch' attribute of a project
+    * 4bc6eb8a7 RepoCommand: Add error to ManifestErrorException
+    * 784f0baec RepoCommand: Copy manifest upstream into .gitmodules ref field
+    * e55341115 RepoProject: read the "upstream" attribute of a project
+    * c0c59ccf2 PatchApplier: Set a boolean on the result if conflict markers were added
+    * cac835835 WalkFetchConnection: Remove marked packs on all function exits
+    * 6e9a17036 Allow applying a patch with conflicts
+    * 28c3ae172 sshd: fix IdentiesOnly if SSH agent is enabled and has keys
+    * c1f95130c Check an execution bit by reading it from the file system
+    * 567315af5 ResolveMerger: Fix the issue with binary modify-modify conflicts
+    * e4b4f063b MergeAlgorithm: Fix diff3 conflict hunk computation
+    * d24eee7d5 [gpg] Correct finding public keys from pubring.gpg
+    * ed8c394eb [gpg] Fix reading ed25519 GPG keys
+
+### 3.8.7 (Withdrawn)
+
 ### 3.8.6
 
 * Enhancements
