Update dependency rules_python to v1.9.0
diff --git a/MODULE.bazel b/MODULE.bazel
index 59e48b3..8de5865 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -117,7 +117,7 @@
     path = "modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/docs/lang/python.rst b/docs/lang/python.rst
index f5471ae..5932316 100644
--- a/docs/lang/python.rst
+++ b/docs/lang/python.rst
@@ -37,7 +37,7 @@
 .. code-block:: python
 
    bazel_dep(name = "rules_proto_grpc_python", version = "<version number here>")
-   bazel_dep(name = "rules_python", version = "1.8.5")
+   bazel_dep(name = "rules_python", version = "1.9.0")
    
    python = use_extension("@rules_python//python/extensions:python.bzl", "python")
    python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_grpc_compile/MODULE.bazel b/examples/python/python_grpc_compile/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_grpc_compile/MODULE.bazel
+++ b/examples/python/python_grpc_compile/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_grpc_library/MODULE.bazel b/examples/python/python_grpc_library/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_grpc_library/MODULE.bazel
+++ b/examples/python/python_grpc_library/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_grpclib_compile/MODULE.bazel b/examples/python/python_grpclib_compile/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_grpclib_compile/MODULE.bazel
+++ b/examples/python/python_grpclib_compile/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_grpclib_library/MODULE.bazel b/examples/python/python_grpclib_library/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_grpclib_library/MODULE.bazel
+++ b/examples/python/python_grpclib_library/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_proto_compile/MODULE.bazel b/examples/python/python_proto_compile/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_proto_compile/MODULE.bazel
+++ b/examples/python/python_proto_compile/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/examples/python/python_proto_library/MODULE.bazel b/examples/python/python_proto_library/MODULE.bazel
index 345cf5d..0c404a0 100644
--- a/examples/python/python_proto_library/MODULE.bazel
+++ b/examples/python/python_proto_library/MODULE.bazel
@@ -17,7 +17,7 @@
     path = "../../../modules/python",
 )
 
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")
diff --git a/modules/python/MODULE.bazel b/modules/python/MODULE.bazel
index c8786d7..1269af4 100644
--- a/modules/python/MODULE.bazel
+++ b/modules/python/MODULE.bazel
@@ -7,7 +7,7 @@
 bazel_dep(name = "grpc", version = "1.74.1")
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 PYTHON_VERSIONS = [
     "3.9",
diff --git a/test_workspaces/absolute_strip_import_prefix/MODULE.bazel b/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
+++ b/test_workspaces/absolute_strip_import_prefix/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel b/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
+++ b/test_workspaces/combined_strip_and_add_prefix/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/empty_output_directory/MODULE.bazel b/test_workspaces/empty_output_directory/MODULE.bazel
index 2b534f8..56319d1 100644
--- a/test_workspaces/empty_output_directory/MODULE.bazel
+++ b/test_workspaces/empty_output_directory/MODULE.bazel
@@ -1,7 +1,7 @@
 bazel_dep(name = "grpc", version = "1.74.1")
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/exclusions/MODULE.bazel b/test_workspaces/exclusions/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/exclusions/MODULE.bazel
+++ b/test_workspaces/exclusions/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/generated_proto/MODULE.bazel b/test_workspaces/generated_proto/MODULE.bazel
index 0314e02..a574329 100644
--- a/test_workspaces/generated_proto/MODULE.bazel
+++ b/test_workspaces/generated_proto/MODULE.bazel
@@ -1,7 +1,7 @@
 bazel_dep(name = "another_workspace", version = "0.0.0")
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "another_workspace",
diff --git a/test_workspaces/generated_proto/another_workspace/MODULE.bazel b/test_workspaces/generated_proto/another_workspace/MODULE.bazel
index 8faad71..8507e3b 100644
--- a/test_workspaces/generated_proto/another_workspace/MODULE.bazel
+++ b/test_workspaces/generated_proto/another_workspace/MODULE.bazel
@@ -2,7 +2,7 @@
 
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/import_prefix/MODULE.bazel b/test_workspaces/import_prefix/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/import_prefix/MODULE.bazel
+++ b/test_workspaces/import_prefix/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/nested_output_directory/MODULE.bazel b/test_workspaces/nested_output_directory/MODULE.bazel
index 46a9ff9..9758107 100644
--- a/test_workspaces/nested_output_directory/MODULE.bazel
+++ b/test_workspaces/nested_output_directory/MODULE.bazel
@@ -2,7 +2,7 @@
 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")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/objc_capitalisation/MODULE.bazel b/test_workspaces/objc_capitalisation/MODULE.bazel
index 43d16c5..d005f5b 100644
--- a/test_workspaces/objc_capitalisation/MODULE.bazel
+++ b/test_workspaces/objc_capitalisation/MODULE.bazel
@@ -1,7 +1,7 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_cc", version = "0.2.17")
 bazel_dep(name = "rules_proto_grpc_objc", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/prefix_path/MODULE.bazel b/test_workspaces/prefix_path/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/prefix_path/MODULE.bazel
+++ b/test_workspaces/prefix_path/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/python3_grpc/MODULE.bazel b/test_workspaces/python3_grpc/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/python3_grpc/MODULE.bazel
+++ b/test_workspaces/python3_grpc/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/python_dashes/MODULE.bazel b/test_workspaces/python_dashes/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/python_dashes/MODULE.bazel
+++ b/test_workspaces/python_dashes/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/python_deps/MODULE.bazel b/test_workspaces/python_deps/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/python_deps/MODULE.bazel
+++ b/test_workspaces/python_deps/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/python_dots/MODULE.bazel b/test_workspaces/python_dots/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/python_dots/MODULE.bazel
+++ b/test_workspaces/python_dots/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/relative_strip_import_prefix/MODULE.bazel b/test_workspaces/relative_strip_import_prefix/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/relative_strip_import_prefix/MODULE.bazel
+++ b/test_workspaces/relative_strip_import_prefix/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/test_workspaces/shared_proto/MODULE.bazel b/test_workspaces/shared_proto/MODULE.bazel
index c46552c..4528375 100644
--- a/test_workspaces/shared_proto/MODULE.bazel
+++ b/test_workspaces/shared_proto/MODULE.bazel
@@ -1,6 +1,6 @@
 bazel_dep(name = "protobuf", version = "31.1")
 bazel_dep(name = "rules_proto_grpc_python", version = "0.0.0.rpg.version.placeholder")
-bazel_dep(name = "rules_python", version = "1.8.5")
+bazel_dep(name = "rules_python", version = "1.9.0")
 
 local_path_override(
     module_name = "rules_proto_grpc",
diff --git a/tools/rulegen/python.go b/tools/rulegen/python.go
index 0b05b08..f659856 100644
--- a/tools/rulegen/python.go
+++ b/tools/rulegen/python.go
@@ -123,7 +123,7 @@
     Label("@protobuf//:protobuf_python"),
 ]`)
 
-var pythonModuleSuffixLines = `bazel_dep(name = "rules_python", version = "1.8.5")
+var pythonModuleSuffixLines = `bazel_dep(name = "rules_python", version = "1.9.0")
 
 python = use_extension("@rules_python//python/extensions:python.bzl", "python")
 python.toolchain(python_version = "3.11")`