Release `rules_java` `v8.5.0-rc1`

We now use a custom release notes generator because the one from `@rules_pkg` isn't suitable anymore for the new `WORKSPACE` setup

PiperOrigin-RevId: 698036411
Change-Id: I73f6d6464c51abae4bbfc87fbfd71732839993f8
diff --git a/MODULE.bazel b/MODULE.bazel
index 648c2b2..f4354ac 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -1,6 +1,6 @@
 module(
     name = "rules_java",
-    version = "8.4.0",
+    version = "8.5.0-rc1",
     bazel_compatibility = [">=6.3.0"],
     compatibility_level = 1,
 )
diff --git a/distro/BUILD.bazel b/distro/BUILD.bazel
index 0fa843f..d8722d4 100644
--- a/distro/BUILD.bazel
+++ b/distro/BUILD.bazel
@@ -1,5 +1,5 @@
 load("@rules_pkg//pkg:tar.bzl", "pkg_tar")
-load("@rules_pkg//pkg/releasing:defs.bzl", "print_rel_notes")
+load(":relnotes.bzl", "print_rel_notes")
 
 package(default_visibility = ["//visibility:private"])
 
@@ -18,10 +18,6 @@
 
 print_rel_notes(
     name = "relnotes",
-    outs = ["relnotes.txt"],
-    deps_method = "rules_java_dependencies",
-    repo = "rules_java",
-    setup_file = "java:repositories.bzl",
-    toolchains_method = "rules_java_toolchains",
+    archive = ":rules_java-%s" % module_version(),
     version = module_version(),
 )
diff --git a/distro/relnotes.bzl b/distro/relnotes.bzl
new file mode 100644
index 0000000..6cee2e3
--- /dev/null
+++ b/distro/relnotes.bzl
@@ -0,0 +1,46 @@
+"""Release notes generator"""
+
+def print_rel_notes(*, name, version, archive):
+    native.genrule(
+        name = name,
+        outs = [name + ".txt"],
+        cmd = """
+              last_rel=$$(curl -s https://api.github.com/repos/bazelbuild/rules_java/releases/latest  | grep 'tag_name' | cut -d: -f2 | tr -cd '[:alnum:].')
+              changelog=$$(/usr/bin/git log tags/$$last_rel..origin/master --format=oneline --)
+              sha=$$(/usr/bin/sha256sum $(SRCS) | cut -d ' '  -f1)
+              cat > $@ <<EOF
+**Changes since $$last_rel
+$$changelog
+
+**MODULE.bazel setup**
+~~~
+bazel_dep(name = "rules_java", version = "{VERSION}")
+~~~
+
+**WORKSPACE setup**
+~~~
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+http_archive(
+    name = "rules_java",
+    urls = [
+        "https://github.com/bazelbuild/rules_java/releases/download/{VERSION}/rules_java-{VERSION}.tar.gz",
+    ],
+    sha256 = "$$sha",
+)
+
+load("@rules_java//java:rules_java_deps.bzl", "rules_java_dependencies")
+rules_java_dependencies()
+load("@com_google_protobuf//bazel/private:proto_bazel_features.bzl", "proto_bazel_features")  # buildifier: disable=bzl-visibility
+proto_bazel_features(name = "proto_bazel_features")
+load("@rules_java//java:repositories.bzl", "rules_java_toolchains")
+rules_java_toolchains()
+~~~
+
+**Using the rules**
+See [the source](https://github.com/bazelbuild/rules_java/tree/{VERSION}).
+
+EOF
+              """.format(ARCHIVE = archive, VERSION = version),
+        srcs = [archive],
+        tags = ["local", "manual"],
+    )