diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3072017..3b5cdac 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,79 @@
+## Release 8.0.0-pre.20240206.3 (2024-02-15)
+
+```
+Baseline: cc8be0ab496570eb155ba220012f52f6a6c7082d
+
+Cherry picks:
+
+   + cff79d0aa6f2d470b8648f2b89beeefd0867e177:
+     Do not build the runfiles tree when creating deploy jars.
+   + 959ab10559800eab6a3841f80cbc06f119e659b7:
+     Fix bug in GraphOutputWriter#partitionedFactored which caused
+     queue to grow to O(E), and now upper-bounding it to O(N).
+```
+
+Incompatible changes:
+
+  - The --host_jvm_profile command line argument is not supported
+    anymore.
+  - The "input_manifests" argument of ctx.actions.{run,run_shell} is
+    now a no-op. resolve_command and resolve_tools always return the
+    empty list as the input manifest list.
+
+Important changes:
+
+  - Bazel's Bash completion can now complete external repository
+    labels when using `--enable_bzlmod`.
+  - BEP's `execution_phase_time_in_ms` no longer includes the
+    analysis-only part at the beginning of the build. Artificial
+    downtrend in `execution_phase_time_in_ms` expected.
+
+This release contains contributions from many people at Google, as well as Fabian Meumertzheim, Xdng Yng, Zheng Wei Tan.
+
+## Release 8.0.0-pre.20240128.3 (2024-02-09)
+
+```
+Baseline: ca728739071c78c67b5d251c7be4b9ba7c17b225
+
+Cherry picks:
+
+   + 41acf91534e3b70847a667642ab3acba034a6e6e:
+     Only cache runfiles mappings of tests if they have more than one
+     shard or run per test.
+```
+
+Incompatible changes:
+
+  - CppLinkAction returns 2 args to aspects that have correct quoting
+    set (before it was always 1 args object defaulting to bash
+    escaping)
+  - CppLinkAction returns 2 args to aspects that have correct quoting
+    set (before it was always 1 args object defaulting to bash
+    escaping)
+
+Important changes:
+
+  - Update iOS tutorial link.
+  - The package(distribs=[...]) attribute has been removed
+    It has been a no-op for several years now.
+  - Prevent linux-sandbox(ed) spawns from being able to write in the
+    cgroups mount.
+  - modifies visibility error to be more readable.
+  - fixes overly-broad test assertion
+  - The deprecated `fragments["apple"].bitcode_mode` and
+    `fragments["cpp"].apple_bitcode_mode` APIs have been removed from
+    Bazel. Apple deprecated Bitcode in Xcode 14.
+  - `bazel mod dump_repo_mapping <canonical repo name>...` returns
+    the repository mappings of the given repositories in NDJSON. This
+    information can be used by IDEs and Starlark language servers to
+    resolve
+    labels with `--enable_bzlmod`.
+  - The flag `--experimental_worker_for_repo_fetching` now defaults
+    to `auto`, which uses virtual threads from JDK 21 if it's
+    available. This eliminates restarts during repo fetching.
+
+This release contains contributions from many people at Google, as well as Adam Singer, Alessandro Patti, Ben Lee, Brentley Jones, Chirag Ramani, Chi Wawng, Chris Gray, Clay McClure, dependabot[bot], Fabian Meumertzheim, Grzegorz Lukasik, hvd, jonshea, Keith Smiley, Nikhil Kalige, Richard Smith, Ryan Beasley, Xdng Yng.
+
 ## Release 8.0.0-pre.20240108.7 (2024-02-05)
 
 ```
