Prepare release 0.7.0 (#233)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index 08d8e3d..c35c110 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,56 @@
+## Release 0.7.0
+
+This release requires Bazel 7 or newer.
+
+By default - when using Bzlmod for dependency management - Stardoc now uses
+`@stardoc` as its repo name.
+
+For compatibility with the legacy WORKSPACE-based setup (which used
+`@io_bazel_stardoc` as the repo name) and ease of migration, you may load
+Stardoc via
+```bzl
+bazel_dep(name = "stardoc", repo_name = "io_bazel_stardoc", ...)
+```
+in your `MODULE.bazel` file.
+
+**New Features**
+
+- Add support for a table of contents template (#203). This is disabled by
+  default, but Stardoc comes with an example template that you can use. To
+  enable, set `table_of_contents_template`, for example:
+  ```bzl
+  stardoc(
+      ...,
+      table_of_contents_template = "@stardoc//stardoc:templates/markdown_tables/table_of_contents.vm",
+  )
+  ```
+- Add support for a footer template (#206). This is disabled by default; to
+  enable, set `footer_template` to a .vm file, which you will need to provide.
+- Add support for providing stamping to Stardoc templates (#205). To use,
+  use `$util.formatBuildTimestamp` and `$stamping` in a template file
+  (`footer_template` - see above - is recommended for this); for example:
+  ```vm
+  Built on `$util.formatBuildTimestamp($stamping.volatile.BUILD_TIMESTAMP, "UTC", "yyyy-MM-dd HH:mm")`
+  ```
+- Render documentation for provider `init` callbacks (#224)
+- Properly render `*args`, `*`, and `**kwargs` in summaries (#231). This requires
+  Bazel 8 (prerelease 20240603 or newer).
+- Include `load` statement in summaries (#216)
+
+**Incompatible Changes**
+
+- The legacy extractor has been removed (#212). Stardoc always uses the
+  `starlark_doc_extract`-based extractor. The `stardoc`, `semantic_flags`, and
+  `use_starlark_doc_extract` arguments to `stardoc()` macro have been removed.
+- Stardoc uses Bzlmod by default for dependency management (#213). This means
+  that by default, Stardoc now uses `@stardoc` as its repo name.
+
+**Contributors**
+
+Alex Humesky, Alexandre Rostovtsev, Fabian Meumertzheim, Grzegorz Lukasik,
+Xùdōng Yáng, Yun Peng
+
+
 ## Release 0.6.2
 
 Bugfix release: bumps `rules_jvm_external` dependency to support building with
diff --git a/MODULE.bazel b/MODULE.bazel
index 7a433d1..ef4ebed 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -1,12 +1,12 @@
 module(
     name = "stardoc",
-    version = "0.7.0-pre",
+    version = "0.7.0",
     bazel_compatibility = [">=7.0.0"],
     compatibility_level = 1,
 )
 
-bazel_dep(name = "bazel_skylib", version = "1.4.2")
-bazel_dep(name = "rules_java", version = "6.3.0")
+bazel_dep(name = "bazel_skylib", version = "1.6.1")
+bazel_dep(name = "rules_java", version = "7.6.1")
 bazel_dep(name = "rules_jvm_external", version = "5.2")
 bazel_dep(name = "rules_license", version = "0.0.7")
 
diff --git a/setup.bzl b/setup.bzl
index d9baa7a..2b14744 100644
--- a/setup.bzl
+++ b/setup.bzl
@@ -22,11 +22,11 @@
     maybe(
         http_archive,
         name = "bazel_skylib",
+        sha256 = "9f38886a40548c6e96c106b752f242130ee11aaa068a56ba7e56f4511f33e4f2",
         urls = [
-            "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.4.2/bazel-skylib-1.4.2.tar.gz",
-            "https://github.com/bazelbuild/bazel-skylib/releases/download/1.4.2/bazel-skylib-1.4.2.tar.gz",
+            "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.6.1/bazel-skylib-1.6.1.tar.gz",
+            "https://github.com/bazelbuild/bazel-skylib/releases/download/1.6.1/bazel-skylib-1.6.1.tar.gz",
         ],
-        sha256 = "66ffd9315665bfaafc96b52278f57c7e2dd09f5ede279ea6d39b2be471e7e3aa",
     )
 
     maybe(
@@ -44,10 +44,10 @@
         http_archive,
         name = "rules_java",
         urls = [
-            "https://mirror.bazel.build/github.com/bazelbuild/rules_java/releases/download/6.3.0/rules_java-6.3.0.tar.gz",
-            "https://github.com/bazelbuild/rules_java/releases/download/6.3.0/rules_java-6.3.0.tar.gz",
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_java/releases/download/7.6.1/rules_java-7.6.1.tar.gz",
+            "https://github.com/bazelbuild/rules_java/releases/download/7.6.1/rules_java-7.6.1.tar.gz",
         ],
-        sha256 = "29ba147c583aaf5d211686029842c5278e12aaea86f66bd4a9eb5e525b7f2701",
+        sha256 = "f8ae9ed3887df02f40de9f4f7ac3873e6dd7a471f9cddf63952538b94b59aeb3",
     )
 
     RULES_JVM_EXTERNAL_TAG = "5.2"
diff --git a/version.bzl b/version.bzl
index 7958a68..d6f8f7b 100644
--- a/version.bzl
+++ b/version.bzl
@@ -13,4 +13,4 @@
 # limitations under the License.
 """The version of Stardoc."""
 
-version = "0.7.0-pre"
+version = "0.7.0"