Update protobuf
diff --git a/MODULE.bazel b/MODULE.bazel
index cecf3b9..a0a9805 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2")
 bazel_dep(name = "gazelle", version = "0.45.0")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_dotnet", version = "0.19.2")
 bazel_dep(name = "rules_go", version = "0.57.0")
diff --git a/modules/buf/MODULE.bazel b/modules/buf/MODULE.bazel
index 281c031..2a6e20e 100644
--- a/modules/buf/MODULE.bazel
+++ b/modules/buf/MODULE.bazel
@@ -5,7 +5,7 @@
 )
 
 bazel_dep(name = "bazel_skylib", version = "1.8.1")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_shell", version = "0.6.0")
 
diff --git a/modules/core/MODULE.bazel b/modules/core/MODULE.bazel
index c2c1a61..9bf7989 100644
--- a/modules/core/MODULE.bazel
+++ b/modules/core/MODULE.bazel
@@ -7,6 +7,6 @@
 bazel_dep(name = "aspect_bazel_lib", version = "2.21.1")
 bazel_dep(name = "bazel_skylib", version = "1.8.1")
 bazel_dep(name = "platforms", version = "1.0.0")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_rust", version = "0.63.0")
 bazel_dep(name = "toolchains_protoc", version = "0.5.0")
diff --git a/modules/cpp/MODULE.bazel b/modules/cpp/MODULE.bazel
index 3d0b1a2..dba58c2 100644
--- a/modules/cpp/MODULE.bazel
+++ b/modules/cpp/MODULE.bazel
@@ -5,6 +5,6 @@
 )
 
 bazel_dep(name = "grpc", version = "1.74.1")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
diff --git a/modules/example_protos/MODULE.bazel b/modules/example_protos/MODULE.bazel
index 144171d..2b78ae1 100644
--- a/modules/example_protos/MODULE.bazel
+++ b/modules/example_protos/MODULE.bazel
@@ -4,4 +4,4 @@
     compatibility_level = 1,
 )
 
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
diff --git a/modules/java/MODULE.bazel b/modules/java/MODULE.bazel
index 64c1657..b8ffc23 100644
--- a/modules/java/MODULE.bazel
+++ b/modules/java/MODULE.bazel
@@ -22,8 +22,8 @@
 maven.install(
     name = "maven",
     artifacts = [
-        "com.google.protobuf:protobuf-java:4.31.1",
-        "com.google.protobuf:protobuf-java-util:4.31.1",
+        "com.google.protobuf:protobuf-java:4.32.0",
+        "com.google.protobuf:protobuf-java-util:4.32.0",
         "io.grpc:grpc-api:1.74.0",
         "io.grpc:grpc-netty:1.74.0",
         "io.grpc:grpc-protobuf:1.74.0",
diff --git a/modules/objc/MODULE.bazel b/modules/objc/MODULE.bazel
index 7f0bec4..52de4a5 100644
--- a/modules/objc/MODULE.bazel
+++ b/modules/objc/MODULE.bazel
@@ -6,6 +6,6 @@
 
 bazel_dep(name = "apple_support", version = "1.23.0")
 bazel_dep(name = "grpc", version = "1.74.1")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
diff --git a/modules/python/MODULE.bazel b/modules/python/MODULE.bazel
index 15d9530..ff7ae59 100644
--- a/modules/python/MODULE.bazel
+++ b/modules/python/MODULE.bazel
@@ -5,7 +5,7 @@
 )
 
 bazel_dep(name = "grpc", version = "1.74.1")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/absolute_strip_import_prefix/MODULE.bazel b/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
+++ b/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel b/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
+++ b/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/common_cpp_library/MODULE.bazel b/test_workspaces/common_cpp_library/MODULE.bazel
index 50e33df..93bb568 100644
--- a/test_workspaces/common_cpp_library/MODULE.bazel
+++ b/test_workspaces/common_cpp_library/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_proto_grpc_cpp", version = "0.0.0.rpg.version.placeholder")
 
diff --git a/test_workspaces/empty_output_directory/MODULE.bazel b/test_workspaces/empty_output_directory/MODULE.bazel
index d44ab25..0522050 100644
--- a/test_workspaces/empty_output_directory/MODULE.bazel
+++ b/test_workspaces/empty_output_directory/MODULE.bazel
@@ -1,5 +1,5 @@
 bazel_dep(name = "grpc", version = "1.74.1")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/exclusions/MODULE.bazel b/test_workspaces/exclusions/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/exclusions/MODULE.bazel
+++ b/test_workspaces/exclusions/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/generated_proto/MODULE.bazel b/test_workspaces/generated_proto/MODULE.bazel
index c3feea0..08e3fb1 100644
--- a/test_workspaces/generated_proto/MODULE.bazel
+++ b/test_workspaces/generated_proto/MODULE.bazel
@@ -1,5 +1,5 @@
 bazel_dep(name = "another_workspace", version = "0.0.0")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/generated_proto/another_workspace/MODULE.bazel b/test_workspaces/generated_proto/another_workspace/MODULE.bazel
index 820179a..f6d1750 100644
--- a/test_workspaces/generated_proto/another_workspace/MODULE.bazel
+++ b/test_workspaces/generated_proto/another_workspace/MODULE.bazel
@@ -1,6 +1,6 @@
 module(name = "another_workspace")
 
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/go_fixer/MODULE.bazel b/test_workspaces/go_fixer/MODULE.bazel
index 5f80c9e..47a454e 100644
--- a/test_workspaces/go_fixer/MODULE.bazel
+++ b/test_workspaces/go_fixer/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_go", version = "0.57.0")
 bazel_dep(name = "rules_proto_grpc_go", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_proto_grpc_grpc_gateway", version = "0.0.0.rpg.version.placeholder")
diff --git a/test_workspaces/go_importpath/MODULE.bazel b/test_workspaces/go_importpath/MODULE.bazel
index d2d3053..0274163 100644
--- a/test_workspaces/go_importpath/MODULE.bazel
+++ b/test_workspaces/go_importpath/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_go", version = "0.57.0")
 bazel_dep(name = "rules_proto_grpc_go", version = "0.0.0.rpg.version.placeholder")
 
diff --git a/test_workspaces/import_prefix/MODULE.bazel b/test_workspaces/import_prefix/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/import_prefix/MODULE.bazel
+++ b/test_workspaces/import_prefix/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/java_deps/MODULE.bazel b/test_workspaces/java_deps/MODULE.bazel
index 3f8b07c..3bf3729 100644
--- a/test_workspaces/java_deps/MODULE.bazel
+++ b/test_workspaces/java_deps/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_java", version = "8.15.1")
 bazel_dep(name = "rules_jvm_external", version = "6.8")
 bazel_dep(name = "rules_proto_grpc_java", version = "0.0.0.rpg.version.placeholder")
@@ -21,8 +21,8 @@
 maven.install(
     name = "maven",
     artifacts = [
-        "com.google.protobuf:protobuf-java:4.31.1",
-        "com.google.protobuf:protobuf-java-util:4.31.1",
+        "com.google.protobuf:protobuf-java:4.32.0",
+        "com.google.protobuf:protobuf-java-util:4.32.0",
     ],
     known_contributing_modules = [
         # Supress warning about multiple contributing modules
diff --git a/test_workspaces/java_deps/Main.java b/test_workspaces/java_deps/Main.java
index 513afb1..9881b89 100644
--- a/test_workspaces/java_deps/Main.java
+++ b/test_workspaces/java_deps/Main.java
@@ -6,7 +6,7 @@
 public class Main {
   public static void main(String[] args) {
     // Check resolved version of Protobuf
-    String expectedVersion = "4.31.1";
+    String expectedVersion = "4.32.0";
     String[] expectedVersionParts = expectedVersion.split("\\.");
     assert RuntimeVersion.MAJOR == Integer.parseInt(expectedVersionParts[0]): "Bad major runtime version: " + RuntimeVersion.MAJOR;
     assert RuntimeVersion.MINOR == Integer.parseInt(expectedVersionParts[1]): "Bad minor runtime version: " + RuntimeVersion.MINOR;
diff --git a/test_workspaces/nested_output_directory/MODULE.bazel b/test_workspaces/nested_output_directory/MODULE.bazel
index 4d33eb6..5b1656e 100644
--- a/test_workspaces/nested_output_directory/MODULE.bazel
+++ b/test_workspaces/nested_output_directory/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_proto_grpc_csharp", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
diff --git a/test_workspaces/objc_capitalisation/MODULE.bazel b/test_workspaces/objc_capitalisation/MODULE.bazel
index 5d2e9d5..dc99c12 100644
--- a/test_workspaces/objc_capitalisation/MODULE.bazel
+++ b/test_workspaces/objc_capitalisation/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_proto_grpc_objc", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
diff --git a/test_workspaces/prefix_path/MODULE.bazel b/test_workspaces/prefix_path/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/prefix_path/MODULE.bazel
+++ b/test_workspaces/prefix_path/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/python3_grpc/MODULE.bazel b/test_workspaces/python3_grpc/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/python3_grpc/MODULE.bazel
+++ b/test_workspaces/python3_grpc/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/python_dashes/MODULE.bazel b/test_workspaces/python_dashes/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/python_dashes/MODULE.bazel
+++ b/test_workspaces/python_dashes/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/python_deps/MODULE.bazel b/test_workspaces/python_deps/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/python_deps/MODULE.bazel
+++ b/test_workspaces/python_deps/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/python_dots/MODULE.bazel b/test_workspaces/python_dots/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/python_dots/MODULE.bazel
+++ b/test_workspaces/python_dots/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/relative_strip_import_prefix/MODULE.bazel b/test_workspaces/relative_strip_import_prefix/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/relative_strip_import_prefix/MODULE.bazel
+++ b/test_workspaces/relative_strip_import_prefix/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/shared_proto/MODULE.bazel b/test_workspaces/shared_proto/MODULE.bazel
index 29f3b53..921892a 100644
--- a/test_workspaces/shared_proto/MODULE.bazel
+++ b/test_workspaces/shared_proto/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
 bazel_dep(name = "rules_python", version = "1.5.3")
 
diff --git a/test_workspaces/special_characters/MODULE.bazel b/test_workspaces/special_characters/MODULE.bazel
index 50e33df..93bb568 100644
--- a/test_workspaces/special_characters/MODULE.bazel
+++ b/test_workspaces/special_characters/MODULE.bazel
@@ -1,4 +1,4 @@
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_proto_grpc_cpp", version = "0.0.0.rpg.version.placeholder")
 
diff --git a/tools/rulegen/MODULE.bazel.template b/tools/rulegen/MODULE.bazel.template
index 7f1d31d..81e0e9d 100644
--- a/tools/rulegen/MODULE.bazel.template
+++ b/tools/rulegen/MODULE.bazel.template
@@ -1,6 +1,6 @@
 bazel_dep(name = "buildifier_prebuilt", version = "8.2.0.2")
 bazel_dep(name = "gazelle", version = "0.45.0")
-bazel_dep(name = "protobuf", version = "31.1")
+bazel_dep(name = "protobuf", version = "32.0")
 bazel_dep(name = "rules_cc", version = "0.2.2")
 bazel_dep(name = "rules_dotnet", version = "0.19.2")
 bazel_dep(name = "rules_go", version = "0.57.0")