code_ownership 2.1.0 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. checksums.yaml +4 -4
  2. data/.cargo/config +2 -2
  3. data/Cargo.lock +10 -16
  4. data/README.md +8 -8
  5. data/ext/cargo-vendor/codeowners-0.3.2/.cargo-checksum.json +1 -0
  6. data/ext/cargo-vendor/codeowners-0.3.2/.github/CODEOWNERS +1 -0
  7. data/ext/cargo-vendor/codeowners-0.3.2/AGENTS.md +38 -0
  8. data/ext/cargo-vendor/codeowners-0.3.2/CLAUDE.md +1 -0
  9. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/Cargo.lock +1 -1
  10. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/Cargo.toml +17 -1
  11. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/README.md +11 -1
  12. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cli.rs +9 -5
  13. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/config.rs +81 -1
  14. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/crosscheck.rs +5 -8
  15. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/codeowners_file_parser.rs +3 -3
  16. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_owner_resolver.rs +3 -1
  17. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/package_mapper.rs +2 -2
  18. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper.rs +2 -2
  19. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/validator.rs +15 -10
  20. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership.rs +1 -0
  21. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project.rs +3 -0
  22. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project_builder.rs +111 -44
  23. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner/api.rs +7 -6
  24. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner/types.rs +2 -1
  25. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/runner.rs +67 -16
  26. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/tracked_files.rs +29 -1
  27. data/ext/cargo-vendor/codeowners-0.3.2/tests/codeowners_path_test.rs +92 -0
  28. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/common/mod.rs +2 -1
  29. data/ext/cargo-vendor/codeowners-0.3.2/tests/executable_name_config_test.rs +67 -0
  30. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/config/code_ownership.yml +11 -0
  31. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/config/teams/test_team.yml +6 -0
  32. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/docs/CODEOWNERS +14 -0
  33. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/expected/CODEOWNERS +14 -0
  34. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_codeowners_path/ruby/app/models/test.rb +3 -0
  35. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/.github/CODEOWNERS +10 -0
  36. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/app/foo.rb +3 -0
  37. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/code_ownership.yml +4 -0
  38. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/teams/foo.yml +5 -0
  39. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/config/teams/payments.yml +6 -0
  40. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/custom_executable_name/ruby/app/payments/foo.rb +4 -0
  41. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/.github/CODEOWNERS +11 -0
  42. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/app/bar.rb +3 -0
  43. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/config/code_ownership.yml +5 -0
  44. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/default_executable_name/config/teams/bar.yml +5 -0
  45. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/.github/CODEOWNERS +10 -0
  46. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/code_ownership.yml +10 -0
  47. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/teams/bad_team.yml +1 -0
  48. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/missing_github_team/config/teams/good.yml +3 -0
  49. data/ext/cargo-vendor/codeowners-0.3.2/tests/fixtures/valid_project/gems/pets/dog.rb +5 -0
  50. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/git_stage_test.rs +4 -1
  51. data/ext/cargo-vendor/codeowners-0.3.2/tests/missing_github_team_test.rs +23 -0
  52. data/ext/cargo-vendor/codeowners-0.3.2/tests/run_config_executable_override_test.rs +98 -0
  53. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/runner_api.rs +8 -4
  54. data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/valid_project_test.rs +3 -3
  55. data/ext/cargo-vendor/codeowners-0.3.2/tests/validate_files_test.rs +378 -0
  56. data/ext/cargo-vendor/magnus-0.8.2/.cargo-checksum.json +1 -0
  57. data/ext/cargo-vendor/magnus-0.8.2/.cargo_vcs_info.json +6 -0
  58. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/CHANGELOG.md +66 -1
  59. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.lock +243 -9
  60. data/ext/cargo-vendor/magnus-0.8.2/Cargo.toml +277 -0
  61. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Cargo.toml.orig +11 -6
  62. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/README.md +75 -23
  63. data/ext/cargo-vendor/magnus-0.8.2/build.rs +15 -0
  64. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/test/temperature_test.rb +4 -4
  65. data/ext/cargo-vendor/magnus-0.8.2/examples/inheritance.rs +66 -0
  66. data/ext/cargo-vendor/magnus-0.8.2/examples/mut_point.rs +116 -0
  67. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/api.rs +4 -3
  68. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/class.rs +9 -7
  69. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/encoding.rs +5 -5
  70. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/error.rs +12 -3
  71. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/fiber.rs +5 -5
  72. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/gc.rs +3 -3
  73. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/integer.rs +134 -0
  74. data/ext/cargo-vendor/magnus-0.8.2/src/io.rs +230 -0
  75. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/lib.rs +53 -54
  76. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/macros.rs +2 -2
  77. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/method.rs +14 -100
  78. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/module.rs +1 -1
  79. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/mutex.rs +1 -1
  80. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_array.rs +2 -2
  81. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_bignum.rs +100 -3
  82. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_hash.rs +63 -1
  83. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_string.rs +31 -231
  84. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_typed_data.rs +6 -9
  85. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/rb_sys.rs +4 -4
  86. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/scan_args.rs +3 -3
  87. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/thread.rs +16 -10
  88. data/ext/cargo-vendor/magnus-0.8.2/src/time.rs +462 -0
  89. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/try_convert.rs +64 -2
  90. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/typed_data.rs +113 -11
  91. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value/flonum.rs +1 -1
  92. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/value.rs +83 -6
  93. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/test +1 -1
  94. data/ext/cargo-vendor/magnus-0.8.2/tests/hash.rs +44 -0
  95. data/ext/cargo-vendor/magnus-0.8.2/tests/io.rs +62 -0
  96. data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_iter.rs +1 -1
  97. data/ext/cargo-vendor/magnus-0.8.2/tests/string.rs +23 -0
  98. data/ext/cargo-vendor/magnus-0.8.2/tests/time.rs +71 -0
  99. data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo-checksum.json +1 -0
  100. data/ext/cargo-vendor/magnus-macros-0.8.0/.cargo_vcs_info.json +6 -0
  101. data/ext/cargo-vendor/magnus-macros-0.8.0/Cargo.lock +47 -0
  102. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml +10 -1
  103. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/Cargo.toml.orig +1 -1
  104. data/ext/cargo-vendor/magnus-macros-0.8.0/src/lib.rs +545 -0
  105. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/typed_data.rs +3 -3
  106. data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/util.rs +1 -1
  107. data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo-checksum.json +1 -0
  108. data/ext/cargo-vendor/serde_magnus-0.10.0/.cargo_vcs_info.json +6 -0
  109. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.lock +77 -75
  110. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml +3 -3
  111. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/Cargo.toml.orig +7 -4
  112. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/README.md +8 -5
  113. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_deserializer.rs +12 -8
  114. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/array_enumerator.rs +12 -7
  115. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/deserializer.rs +21 -18
  116. data/ext/cargo-vendor/serde_magnus-0.10.0/src/de/enum_deserializer.rs +35 -0
  117. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/hash_deserializer.rs +18 -11
  118. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/mod.rs +76 -76
  119. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/de/variant_deserializer.rs +10 -9
  120. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/error.rs +10 -4
  121. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/lib.rs +6 -5
  122. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/enums.rs +11 -0
  123. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/map_serializer.rs +11 -12
  124. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/mod.rs +53 -50
  125. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/seq_serializer.rs +11 -10
  126. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/src/ser/serializer.rs +50 -34
  127. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_serializer.rs +40 -0
  128. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/struct_variant_serializer.rs +45 -0
  129. data/ext/cargo-vendor/serde_magnus-0.10.0/src/ser/tuple_variant_serializer.rs +38 -0
  130. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_arrays.rs +3 -3
  131. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_booleans.rs +15 -0
  132. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_enums.rs +39 -0
  133. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_floats.rs +12 -0
  134. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_integers.rs +18 -0
  135. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_maps.rs +3 -2
  136. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_options.rs +15 -0
  137. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_results.rs +17 -0
  138. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_strings.rs +7 -7
  139. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_structs.rs +9 -9
  140. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/deserializing_tuples.rs +27 -0
  141. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/deserializing_vecs.rs +3 -3
  142. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_arrays.rs +3 -3
  143. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_booleans.rs +15 -0
  144. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_enums.rs +9 -7
  145. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_floats.rs +2 -2
  146. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_integers.rs +4 -4
  147. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_maps.rs +3 -2
  148. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_options.rs +3 -3
  149. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_results.rs +5 -4
  150. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_strings.rs +30 -0
  151. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_structs.rs +15 -7
  152. data/ext/cargo-vendor/serde_magnus-0.10.0/tests/serializing_tuples.rs +35 -0
  153. data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/tests/serializing_vecs.rs +3 -3
  154. data/ext/cargo-vendor/unicode-ident-1.0.19/.cargo-checksum.json +1 -1
  155. data/ext/code_ownership/Cargo.toml +3 -3
  156. data/ext/code_ownership/extconf.rb +2 -1
  157. data/ext/code_ownership/src/lib.rs +18 -18
  158. data/lib/code_ownership/cli.rb +1 -0
  159. data/lib/code_ownership/private/file_path_finder.rb +22 -10
  160. data/lib/code_ownership/private/file_path_team_cache.rb +5 -9
  161. data/lib/code_ownership/private/for_file_output_builder.rb +0 -1
  162. data/lib/code_ownership/private/team_finder.rb +9 -16
  163. data/lib/code_ownership/version.rb +2 -2
  164. data/lib/code_ownership.rb +14 -17
  165. metadata +359 -337
  166. data/ext/cargo-vendor/codeowners-0.3.0/.cargo-checksum.json +0 -1
  167. data/ext/cargo-vendor/codeowners-0.3.0/tests/validate_files_test.rs +0 -144
  168. data/ext/cargo-vendor/magnus-0.7.1/.cargo-checksum.json +0 -1
  169. data/ext/cargo-vendor/magnus-0.7.1/.cargo_vcs_info.json +0 -6
  170. data/ext/cargo-vendor/magnus-0.7.1/Cargo.toml +0 -95
  171. data/ext/cargo-vendor/magnus-0.7.1/build.rs +0 -5
  172. data/ext/cargo-vendor/magnus-0.7.1/examples/mut_point.rs +0 -60
  173. data/ext/cargo-vendor/magnus-0.7.1/src/time.rs +0 -190
  174. data/ext/cargo-vendor/magnus-0.7.1/tests/hash.rs +0 -25
  175. data/ext/cargo-vendor/magnus-0.7.1/tests/string.rs +0 -13
  176. data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo-checksum.json +0 -1
  177. data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo_vcs_info.json +0 -6
  178. data/ext/cargo-vendor/magnus-macros-0.6.0/src/lib.rs +0 -401
  179. data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo-checksum.json +0 -1
  180. data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo_vcs_info.json +0 -6
  181. data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml +0 -25
  182. data/ext/cargo-vendor/rb-sys-env-0.1.2/Cargo.toml.orig +0 -14
  183. data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-APACHE +0 -190
  184. data/ext/cargo-vendor/rb-sys-env-0.1.2/LICENSE-MIT +0 -21
  185. data/ext/cargo-vendor/rb-sys-env-0.1.2/readme.md +0 -119
  186. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/defines.rs +0 -37
  187. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/lib.rs +0 -180
  188. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/rb_env.rs +0 -110
  189. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/ruby_version.rs +0 -163
  190. data/ext/cargo-vendor/rb-sys-env-0.1.2/src/utils.rs +0 -6
  191. data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo-checksum.json +0 -1
  192. data/ext/cargo-vendor/serde_magnus-0.9.0/.cargo_vcs_info.json +0 -6
  193. data/ext/cargo-vendor/serde_magnus-0.9.0/src/de/enum_deserializer.rs +0 -30
  194. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/enums.rs +0 -11
  195. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_serializer.rs +0 -36
  196. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/struct_variant_serializer.rs +0 -37
  197. data/ext/cargo-vendor/serde_magnus-0.9.0/src/ser/tuple_variant_serializer.rs +0 -33
  198. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_booleans.rs +0 -18
  199. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_enums.rs +0 -39
  200. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_floats.rs +0 -12
  201. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_integers.rs +0 -18
  202. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_options.rs +0 -15
  203. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_results.rs +0 -17
  204. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/deserializing_tuples.rs +0 -31
  205. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_booleans.rs +0 -15
  206. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_strings.rs +0 -30
  207. data/ext/cargo-vendor/serde_magnus-0.9.0/tests/serializing_tuples.rs +0 -27
  208. data/ext/cargo-vendor/unicode-ident-1.0.19/tests/fst/.gitignore +0 -1
  209. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/audit.yml +0 -0
  210. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/ci.yml +0 -0
  211. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.github/workflows/dotslash-config.json +0 -0
  212. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.rustfmt.toml +0 -0
  213. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/.rusty-hook.toml +0 -0
  214. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/dev/run_benchmarks_for_file.sh +0 -0
  215. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/dev/run_benchmarks_for_gv.sh +0 -0
  216. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/rust-toolchain.toml +0 -0
  217. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/file.rs +0 -0
  218. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/mod.rs +0 -0
  219. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/cache/noop.rs +0 -0
  220. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/common_test.rs +0 -0
  221. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/lib.rs +0 -0
  222. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/main.rs +0 -0
  223. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/codeowners_query.rs +0 -0
  224. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_generator.rs +0 -0
  225. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/file_owner_finder.rs +0 -0
  226. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/annotated_file_mapper.rs +0 -0
  227. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/directory_mapper.rs +0 -0
  228. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/escaper.rs +0 -0
  229. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_gem_mapper.rs +0 -0
  230. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_glob_mapper.rs +0 -0
  231. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/ownership/mapper/team_yml_mapper.rs +0 -0
  232. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/path_utils.rs +0 -0
  233. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/src/project_file_builder.rs +0 -0
  234. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/cache_test.rs +0 -0
  235. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/crosscheck_owners_test.rs +0 -0
  236. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/.github/CODEOWNERS +0 -0
  237. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/code_ownership.yml +0 -0
  238. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/teams/payments.yml +0 -0
  239. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/config/teams/payroll.yml +0 -0
  240. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/gems/payroll_calculator/calculator.rb +0 -0
  241. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/bank_account.rb +0 -0
  242. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/blockchain.rb +0 -0
  243. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/models/payroll.rb +0 -0
  244. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/payments/nacha.rb +0 -0
  245. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/services/.codeowner +0 -0
  246. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/services/multi_owned.rb +0 -0
  247. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/app/unowned.rb +0 -0
  248. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/invalid_project/ruby/packages/payroll_flow/package.yml +0 -0
  249. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/.github/CODEOWNERS +0 -0
  250. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/.keep +0 -0
  251. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/code_ownership.yml +0 -0
  252. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/teams/design.yml +0 -0
  253. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/config/teams/frontend.yml +0 -0
  254. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/apps/public/index.tsx +0 -0
  255. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/dashboard/package.json +0 -0
  256. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/dashboard/src/index.tsx +0 -0
  257. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/ui-kit/.codeowner +0 -0
  258. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/javascript_only_project/frontend/packages/ui-kit/src/button.tsx +0 -0
  259. /data/ext/cargo-vendor/{codeowners-0.3.0/tests/fixtures/valid_project → codeowners-0.3.2/tests/fixtures/missing_github_team}/gems/pets/dog.rb +0 -0
  260. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/.github/CODEOWNERS +0 -0
  261. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/.codeowner +0 -0
  262. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/deep/nesting/nestdir/deep_file.rb +0 -0
  263. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/consumers/one_owner.rb +0 -0
  264. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/.codeowner +0 -0
  265. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/exciting/.codeowner +0 -0
  266. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/app/services/exciting/some_other_file.rb +0 -0
  267. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/code_ownership.yml +0 -0
  268. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/teams/bar.yml +0 -0
  269. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/multiple-directory-owners/config/teams/foo.yml +0 -0
  270. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/.github/CODEOWNERS +0 -0
  271. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/.ignore +0 -0
  272. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/code_ownership.yml +0 -0
  273. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/payments.yml +0 -0
  274. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/payroll.yml +0 -0
  275. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/config/teams/ux.yml +0 -0
  276. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/gems/payroll_calculator/calculator.rb +0 -0
  277. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/PayrollFlow/index.tsx +0 -0
  278. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/PayrollFlow/package.json +0 -0
  279. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/(special)/.codeowner +0 -0
  280. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/(special)/pay.ts +0 -0
  281. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/.codeowner +0 -0
  282. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/items/item.ts +0 -0
  283. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/javascript/packages/list/page-admin.tsx +0 -0
  284. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/models/bank_account.rb +0 -0
  285. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/models/payroll.rb +0 -0
  286. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/foo/.codeowner +0 -0
  287. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/foo/ownedby_payroll.rb +0 -0
  288. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payments/nacha.rb +0 -0
  289. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payroll/.codeowner +0 -0
  290. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/payroll/payroll.rb +0 -0
  291. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/edit.erb +0 -0
  292. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/index.html.erb +0 -0
  293. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/app/views/foos/new.html.erb +0 -0
  294. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/ignored_files/git_ignored.rb +0 -0
  295. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/ruby/packages/payroll_flow/package.yml +0 -0
  296. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project/should_be_ignored/an_ignored_file.rb +0 -0
  297. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/.github/CODEOWNERS +0 -0
  298. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/code_ownership.yml +0 -0
  299. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/brewers.yml +0 -0
  300. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/cubs.yml +0 -0
  301. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/giants.yml +0 -0
  302. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/config/teams/rockies.yml +0 -0
  303. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/package.json +0 -0
  304. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/src/picks/dp.tsx +0 -0
  305. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/package.json +0 -0
  306. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/src/item.tsx +0 -0
  307. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/package.json +0 -0
  308. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/field.tsx +0 -0
  309. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/fields/small.tsx +0 -0
  310. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/apollo/lib/apollo.rb +0 -0
  311. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/ivy/lib/ivy.rb +0 -0
  312. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/lager/lib/lager.rb +0 -0
  313. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/gems/summit/lib/summit.rb +0 -0
  314. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/games/app/services/stats.rb +0 -0
  315. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/games/package.yml +0 -0
  316. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/locations/app/services/capacity.rb +0 -0
  317. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/locations/package.yml +0 -0
  318. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/schedule/app/services/date.rb +0 -0
  319. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/packs/schedule/package.yml +0 -0
  320. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/brewers/lib/util.rb +0 -0
  321. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/brewers/services/play.rb +0 -0
  322. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/.codeowner +0 -0
  323. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/.codeowner +0 -0
  324. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/db/price.rb +0 -0
  325. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/entertainment.rb +0 -0
  326. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/play.rb +0 -0
  327. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/giants/services/play.rb +0 -0
  328. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/fixtures/valid_project_with_overrides/ruby/app/rockies/services/play.rb +0 -0
  329. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/invalid_project_structure_test.rs +0 -0
  330. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/invalid_project_test.rs +0 -0
  331. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/multiple_directory_owners_test.rs +0 -0
  332. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/untracked_files_test.rs +0 -0
  333. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tests/valid_project_with_overrides_test.rs +0 -0
  334. /data/ext/cargo-vendor/{codeowners-0.3.0 → codeowners-0.3.2}/tmp/.gitkeep +0 -0
  335. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/.cargo/config.toml +0 -0
  336. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/Gemfile +0 -0
  337. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/LICENSE +0 -0
  338. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/Rakefile +0 -0
  339. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/complete_object/lib/temperature.rb +0 -0
  340. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/Rakefile +0 -0
  341. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman/error.rb +0 -0
  342. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/lib/ahriman.rb +0 -0
  343. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_ruby/test/error_test.rb +0 -0
  344. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/Rakefile +0 -0
  345. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/lib/ahriman.rb +0 -0
  346. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/custom_exception_rust/test/error_test.rb +0 -0
  347. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/fibonacci.rs +0 -0
  348. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/hello_world.rs +0 -0
  349. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/point.rs +0 -0
  350. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/Rakefile +0 -0
  351. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/lib/rust_blank.rb +0 -0
  352. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/bench.rb +0 -0
  353. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/examples/rust_blank/test/blank_test.rb +0 -0
  354. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/block.rs +0 -0
  355. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/embed.rs +0 -0
  356. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/enumerator.rs +0 -0
  357. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/exception.rs +0 -0
  358. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/float.rs +0 -0
  359. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/into_value.rs +0 -0
  360. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/numeric.rs +0 -0
  361. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/object.rs +0 -0
  362. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/process.rs +0 -0
  363. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_complex.rs +0 -0
  364. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_file.rs +0 -0
  365. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_float.rs +0 -0
  366. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_match.rs +0 -0
  367. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_object.rs +0 -0
  368. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_rational.rs +0 -0
  369. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_regexp.rs +0 -0
  370. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/r_struct.rs +0 -0
  371. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/range.rs +0 -0
  372. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/src/symbol.rs +0 -0
  373. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/allocate_before_init.rs +0 -0
  374. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/array_slice.rs +0 -0
  375. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/block_call.rs +0 -0
  376. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/bytes.rs +0 -0
  377. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/call_proc.rs +0 -0
  378. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/classname.rs +0 -0
  379. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/clone.rs +0 -0
  380. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/codepoints.rs +0 -0
  381. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/debug_exception.rs +0 -0
  382. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/encoding_capable.rs +0 -0
  383. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumerator.rs +0 -0
  384. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/enumeratorize.rs +0 -0
  385. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_from_value.rs +0 -0
  386. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/float_convert_to_value.rs +0 -0
  387. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/fmt.rs +0 -0
  388. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/freeze.rs +0 -0
  389. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_convert_to_value.rs +0 -0
  390. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/integer_traits.rs +0 -0
  391. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/ivar.rs +0 -0
  392. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/lazy_id.rs +0 -0
  393. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/make_proc.rs +0 -0
  394. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/proc_new.rs +0 -0
  395. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/range.rs +0 -0
  396. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/return_custom_error.rs +0 -0
  397. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/scan_args.rs +0 -0
  398. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/str.rs +0 -0
  399. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/struct.rs +0 -0
  400. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/symbol.rs +0 -0
  401. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/try_convert_array.rs +0 -0
  402. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/tuple_to_array.rs +0 -0
  403. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data.rs +0 -0
  404. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_obj.rs +0 -0
  405. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass.rs +0 -0
  406. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/typed_data_subclass_from_ruby.rs +0 -0
  407. /data/ext/cargo-vendor/{magnus-0.7.1 → magnus-0.8.2}/tests/yield.rs +0 -0
  408. /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/LICENSE +0 -0
  409. /data/ext/cargo-vendor/{magnus-macros-0.6.0 → magnus-macros-0.8.0}/src/init.rs +0 -0
  410. /data/ext/cargo-vendor/{serde_magnus-0.9.0 → serde_magnus-0.10.0}/LICENSE +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 523b1156430e253b991257fdada359ab8f0dddec015984c7994c925205412b33
4
- data.tar.gz: 7033d3b132d70101d78d4ff10602953e0c17bbfa14e830cabe68ce81ea49405d
3
+ metadata.gz: d8fedeffce41aac3825e154fc451ffbacc71459b82811bb5d3cca37518f7de0a
4
+ data.tar.gz: 96a9b124d2b197f2427f146bc86fccf7e450d52154b9f60e70661c0615a75f1f
5
5
  SHA512:
6
- metadata.gz: 8dae151b7c6b4e9ef31a632c9e77fae434ec6620df11f15b65f5e5e88b200f95740972cf6b3ccf87d941564dbe16a04cd3a65f7c31d2cfb5778eda211db4d00c
7
- data.tar.gz: 8cf1f5ae34760260a9ff460684cafad0e8810911bda5cf211fd423582c02fe421bdf0ec33425eebe39e18963361a8150f61ad4e32a78d4af7a323ee052a8f7f2
6
+ metadata.gz: fd4f8f0b52eb97cc6e40e22c86b46c8e7dc91d78d8e1bef65ce57167176b4130a92c2be1b9e33e0818ddfc3f3eb60659a385f3cb23eeffbbf4f4b9d0ba734fea
7
+ data.tar.gz: f8d0f83ac58d7b70e46f7c50549c107bd30f6434a9584d1a794b5a192a1d0a23106db231f6ea4cc3449a3300a8ee3c029b1fafa7dd882e430c55528ed124c40b
data/.cargo/config CHANGED
@@ -1,9 +1,9 @@
1
1
  [source.crates-io]
2
2
  replace-with = "vendored-sources"
3
3
 
4
- [source."git+https://github.com/rubyatscale/codeowners-rs.git?tag=v0.3.0"]
4
+ [source."git+https://github.com/rubyatscale/codeowners-rs.git?tag=v0.3.2"]
5
5
  git = "https://github.com/rubyatscale/codeowners-rs.git"
6
- tag = "v0.3.0"
6
+ tag = "v0.3.2"
7
7
  replace-with = "vendored-sources"
8
8
 
9
9
  [source.vendored-sources]
data/Cargo.lock CHANGED
@@ -193,15 +193,15 @@ dependencies = [
193
193
  "codeowners",
194
194
  "magnus",
195
195
  "rb-sys",
196
- "rb-sys-env 0.2.2",
196
+ "rb-sys-env",
197
197
  "serde",
198
198
  "serde_magnus",
199
199
  ]
200
200
 
201
201
  [[package]]
202
202
  name = "codeowners"
203
- version = "0.3.0"
204
- source = "git+https://github.com/rubyatscale/codeowners-rs.git?tag=v0.3.0#c3cace6a497f5708d3b78d1b91618fc90284ae0b"
203
+ version = "0.3.2"
204
+ source = "git+https://github.com/rubyatscale/codeowners-rs.git?tag=v0.3.2#49629b131eb788916ff5e6722719513026260480"
205
205
  dependencies = [
206
206
  "clap",
207
207
  "clap_derive",
@@ -494,21 +494,21 @@ dependencies = [
494
494
 
495
495
  [[package]]
496
496
  name = "magnus"
497
- version = "0.7.1"
497
+ version = "0.8.2"
498
498
  source = "registry+https://github.com/rust-lang/crates.io-index"
499
- checksum = "3d87ae53030f3a22e83879e666cb94e58a7bdf31706878a0ba48752994146dab"
499
+ checksum = "3b36a5b126bbe97eb0d02d07acfeb327036c6319fd816139a49824a83b7f9012"
500
500
  dependencies = [
501
501
  "magnus-macros",
502
502
  "rb-sys",
503
- "rb-sys-env 0.1.2",
503
+ "rb-sys-env",
504
504
  "seq-macro",
505
505
  ]
506
506
 
507
507
  [[package]]
508
508
  name = "magnus-macros"
509
- version = "0.6.0"
509
+ version = "0.8.0"
510
510
  source = "registry+https://github.com/rust-lang/crates.io-index"
511
- checksum = "5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3"
511
+ checksum = "47607461fd8e1513cb4f2076c197d8092d921a1ea75bd08af97398f593751892"
512
512
  dependencies = [
513
513
  "proc-macro2",
514
514
  "quote",
@@ -670,12 +670,6 @@ dependencies = [
670
670
  "syn 2.0.106",
671
671
  ]
672
672
 
673
- [[package]]
674
- name = "rb-sys-env"
675
- version = "0.1.2"
676
- source = "registry+https://github.com/rust-lang/crates.io-index"
677
- checksum = "a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb"
678
-
679
673
  [[package]]
680
674
  name = "rb-sys-env"
681
675
  version = "0.2.2"
@@ -811,9 +805,9 @@ dependencies = [
811
805
 
812
806
  [[package]]
813
807
  name = "serde_magnus"
814
- version = "0.9.0"
808
+ version = "0.10.0"
815
809
  source = "registry+https://github.com/rust-lang/crates.io-index"
816
- checksum = "51b8b945a2dadb221f1c5490cfb411cab6c3821446b8eca50ee07e5a3893ec51"
810
+ checksum = "c4a5121544138e6a14036e48ecbe589fb63577f35620caaa32642257b412c317"
817
811
  dependencies = [
818
812
  "magnus",
819
813
  "serde",
data/README.md CHANGED
@@ -10,7 +10,7 @@ There is also a [companion VSCode Extension](https://github.com/rubyatscale/code
10
10
 
11
11
  ## Getting started
12
12
 
13
- To get started there's a few things you should do.
13
+ To get started there are a few things you should do.
14
14
 
15
15
  1. Create a `config/code_ownership.yml` file and declare where your files live. Here's a sample to start with:
16
16
 
@@ -42,7 +42,7 @@ There are five ways to declare code ownership using this gem:
42
42
 
43
43
  ### Directory-Based Ownership
44
44
 
45
- Directory based ownership allows for all files in that directory and all its sub-directories to be owned by one team. To define this, add a `.codeowner` file inside that directory with the name of the team as the contents of that file.
45
+ Directory-based ownership allows for all files in that directory and all its sub-directories to be owned by one team. To define this, add a `.codeowner` file inside that directory with the name of the team as the contents of that file.
46
46
 
47
47
  ```
48
48
  Team
@@ -58,7 +58,7 @@ File annotations are a last resort if there is no clear home for your code. File
58
58
 
59
59
  ### Package-Based Ownership
60
60
 
61
- Package based ownership integrates [`packwerk`](https://github.com/Shopify/packwerk) and has ownership defined per package. To define that all files within a package are owned by one team, configure your `package.yml` like this:
61
+ Package-based ownership integrates [`packwerk`](https://github.com/Shopify/packwerk) and has ownership defined per package. To define that all files within a package are owned by one team, configure your `package.yml` like this:
62
62
 
63
63
  ```yml
64
64
  enforce_dependency: true
@@ -92,7 +92,7 @@ unowned_globs:
92
92
 
93
93
  ### Javascript Package Ownership
94
94
 
95
- Javascript package based ownership allows you to specify an ownership key in a `package.json`. To use this, configure your `package.json` like this:
95
+ JavaScript package-based ownership allows you to specify an ownership key in a `package.json`. To use this, configure your `package.json` like this:
96
96
 
97
97
  ```json
98
98
  {
@@ -112,10 +112,10 @@ js_package_paths:
112
112
  - frontend/other_location_for_packages/*
113
113
  ```
114
114
 
115
- This defaults `**/`, which makes it look for `package.json` files across your application.
115
+ This defaults to `**/`, which makes it look for `package.json` files across your application.
116
116
 
117
117
  > [!NOTE]
118
- > Javscript package ownership does not respect `unowned_globs`. If you wish to disable usage of this feature you can set `js_package_paths` to an empty list.
118
+ > JavaScript package ownership does not respect `unowned_globs`. If you wish to disable usage of this feature you can set `js_package_paths` to an empty list.
119
119
 
120
120
  ```yml
121
121
  js_package_paths: []
@@ -184,7 +184,7 @@ If `codeowners_path` is set in `code_ownership.yml` codeowners will use that pat
184
184
  CodeOwnership comes with a validation function to ensure the following things are true:
185
185
 
186
186
  1. Only one mechanism is defining file ownership. That is -- you can't have a file annotation on a file owned via package-based or glob-based ownership. This helps make ownership behavior more clear by avoiding concerns about precedence.
187
- 2. All teams referenced as an owner for any file or package is a valid team (i.e. it's in the list of `CodeTeams.all`).
187
+ 2. All teams referenced as an owner for any file or package are valid teams (i.e. they're in the list of `CodeTeams.all`).
188
188
  3. All files have ownership. You can specify in `unowned_globs` to represent a TODO list of files to add ownership to.
189
189
  4. The `.github/CODEOWNERS` file is up to date. This is automatically corrected and staged unless specified otherwise with `bin/codeownership validate --skip-autocorrect --skip-stage`. You can turn this validation off by setting `skip_codeowners_validation: true` in `config/code_ownership.yml`.
190
190
 
@@ -223,7 +223,7 @@ codeownership validate --diff
223
223
 
224
224
  ## Development
225
225
 
226
- Please add to `CHANGELOG.md` and this `README.md` when you make make changes.
226
+ Please add to `CHANGELOG.md` and this `README.md` when you make changes.
227
227
 
228
228
  ## Running specs
229
229
 
@@ -0,0 +1 @@
1
+ {"files":{".github/CODEOWNERS":"8df3f986d37e09c1e9d8102c45e8776a506cd56b75a9fe03270626e4843c0ad0",".github/workflows/audit.yml":"bde77859031fa481da1fcaf399129b64819d78a0ffbbb2d4c4f5346f4a4dec7e",".github/workflows/ci.yml":"a4b503d5b650f4d59d7e02b3a33f623c373f1ae8c892b6ddcc47b271b7d109db",".github/workflows/dotslash-config.json":"21dbdefc13a01f3aad42923963b9025907d4049d8e75b18208e887f9e601e381",".rustfmt.toml":"394616646760b18ed094433d39e18b7d94986347c21790708bff9ab001f38e0b",".rusty-hook.toml":"9d3d8a8f4f20d80682ce71889a17eb5ba204f4636f27211fafcb6c6b5af5c2bb","AGENTS.md":"9cab0708a38900826f5b5804fc921ea3aea293f533727100bcfb5735f7835d05","CLAUDE.md":"336cc4fbf19beaada7ccf9986414fa91851a8d7a07dfb3ccbe800a69eed0ab49","Cargo.lock":"78fffcf69a203c94181059deecd0733495c85d5947b7765329f39f5aae3f7cf9","Cargo.toml":"6f0840ff57ba26a1ce127a4439107b2d7270d22b87987663b2039edc13aaeb19","README.md":"11b96c2361db6e2ad82fecb354b767d55d7f77656694e10990685fe8c6c644bb","dev/run_benchmarks_for_file.sh":"f633c0fbfd1ea89b3fb21cf2721ab481670cf2de8d424bb4448a4ad5e908c38d","dev/run_benchmarks_for_gv.sh":"c3e26bed04b3f2ab5dce3372db249349990b9033fe5ed963d5b7f58a4a72ffbf","rust-toolchain.toml":"b6a9e4028a0a266a7d2055c287092b816c89336df42076dec9d9aaa4c0007c0e","src/cache/file.rs":"7ffe92cce38b2a21e8d9f7eb85b50e54a90523546a68b5441b423204b9aae940","src/cache/mod.rs":"622ad6effc3260c922fe49f3800e0d1c5b3c6a73c81d567296ea6cb550792d32","src/cache/noop.rs":"abfddf1c20cbaca5dd432952d0ff0a0a1d92eb0070866d343e368f29cdd22de9","src/cli.rs":"ddee568b1a2e3de96027e6e2caa9f0ece5f677ecc66671676100b14d3ab51353","src/common_test.rs":"9df12547039d3d99dd7dd8798a35960892f7bbcf74036adbdcf4a14b8567a743","src/config.rs":"2646a547371617acb0935941f134a131d66174ecd156792e644b7ab3d49c0b74","src/crosscheck.rs":"f5f52c735e09da7fa413c51c2f81a349f8c62782041c7649fc18909d59efcea6","src/lib.rs":"8a2946ae156e306a2245857e295886a369fa2c3ef2bace585185f64c47e293be","src/main.rs":"51f0621733107ff3505cfffdf84b557e7fdbc79189f55561d8fb9ad550d6fb78","src/ownership.rs":"29287dd073294afd2826b6754175d09ca87773191af2218487ff9e703ccd2035","src/ownership/codeowners_file_parser.rs":"0f798722af3a0adb0b8b790e871e56257d9f265ed2d8542f0d202eca5afca2f4","src/ownership/codeowners_query.rs":"30556b0ee2c38c1ca9283763df1ad7ddd7f964bc8d449c0bf2f935c387fe1673","src/ownership/file_generator.rs":"8b5d3fd03733f1b1c1b76be0b20467f2b50799d2a3a7806dc3df52147a470a46","src/ownership/file_owner_finder.rs":"104626da603ddcaccb217387f13141c81fb768b41cf8b7fbc5f65809f487231b","src/ownership/file_owner_resolver.rs":"02d72fd4edeaad36b3454fe1c1e638665d208a14c09a8dd26465fad4a5bd90e2","src/ownership/mapper.rs":"a3bd5bc0bf7423fd061a044bd9fcc1d1b6bccd24e914b1f90a10a6fac56cc2f9","src/ownership/mapper/annotated_file_mapper.rs":"f34f845ddb45545f02f8ae2ab83c3934bc38dd95f9ba9d4142e12f61dfac271a","src/ownership/mapper/directory_mapper.rs":"a86866b518efbfdbb056a2d472c981eec875f2ddca5899f029405b76e875b018","src/ownership/mapper/escaper.rs":"2faa41beefedca26d493e8d8f68882384ddbb2c4b108953f30b960847a3f841c","src/ownership/mapper/package_mapper.rs":"394297b4c5890fb3a6b0289b78cec63fbb2e15fb4dc043e9d3ba0cb00769b7f6","src/ownership/mapper/team_gem_mapper.rs":"50b6ad9e60c03e055662724296576b4586167b0d7d6c03819f98b30c0f37342f","src/ownership/mapper/team_glob_mapper.rs":"ce0638118ec9c610210880534a62740f9bd4d15494b0b9516bcc11fa2bbfb508","src/ownership/mapper/team_yml_mapper.rs":"3c759139fc9ff362b82102aeaec958aec7ec9df86df87482a3362ab8ea54404f","src/ownership/validator.rs":"f775ebe330f48a6988fdb911a138b0ba4939423112e5e3647a7c38b73cccbbe2","src/path_utils.rs":"de5f7fc080f372ca025f777a5018319236f5b83c2c1ac77f9a387e62ce683ab4","src/project.rs":"26fac1893915f978f32eb80c5a8cf39ff37dc05f77e445e7e4fea8aba36a8f7c","src/project_builder.rs":"725a19d4e68cac2d7348bcfbc2b9c8b35f1d789247a3746e3adb70277485d1ac","src/project_file_builder.rs":"d0be8786d8160ad40d2286c9e43e11df1d38dbb7f7c84f5029d4656b19d75cbf","src/runner.rs":"7ab4f07660e249f5301e8944ab82e24df48012f6fa7a70ea81b8ef912cce8f8d","src/runner/api.rs":"c7e9815fbf654665da9d11d6b2405f623ed2fc36b93c37db212421351e9a779b","src/runner/types.rs":"30be32563f7fee61ca991618874dda497ccbe1d7c3fde4c023fd9eaa90ce7853","src/tracked_files.rs":"85ab07d649a5a9d90181489f8ebb7c173af4547ca267bc277b5bcf7534715823","tests/cache_test.rs":"80b900f38e177eb8c9e162b9373cd1d7c3a551baade716a1b07554a021bfef05","tests/codeowners_path_test.rs":"6e10631bcd93bbb850eed2818de057f0621c714137a11676f0a689f775699f52","tests/common/mod.rs":"ea2b9de36002a946c3ab6ed4101ff7c395c7a0f9ac143c12618a3d27fc8e15e4","tests/crosscheck_owners_test.rs":"8f83ec2feb7bef1cf34fec445096a342900359e5efed3b0b9485d48dad6e704d","tests/executable_name_config_test.rs":"193f675cd4b48798c1d536b3e07abe602bec580035f22ef143bf2e4fca00fbb0","tests/fixtures/custom_codeowners_path/config/code_ownership.yml":"3c9a4b046bab1f4d842e728dc9dea32ec09e7d01b6db5d1726e71ab330773b0e","tests/fixtures/custom_codeowners_path/config/teams/test_team.yml":"93ecfdd871a5e12e11293fd920988f82a67cb1a6fe39740a988a3e3fd0fda68f","tests/fixtures/custom_codeowners_path/docs/CODEOWNERS":"53db3b0313340fc5ce3a4c8050d1d8e7c1fb4fae1050e5bb047d3b211afed272","tests/fixtures/custom_codeowners_path/expected/CODEOWNERS":"53db3b0313340fc5ce3a4c8050d1d8e7c1fb4fae1050e5bb047d3b211afed272","tests/fixtures/custom_codeowners_path/ruby/app/models/test.rb":"d4218b8bc15617dd06a04632896ff45547545d2b1a0847adf5db860ac7ca060f","tests/fixtures/custom_executable_name/.github/CODEOWNERS":"1cbe2dc8b6f050c3ab084aeb6182abed325274a95101ccb74d7410bb9e787cca","tests/fixtures/custom_executable_name/app/foo.rb":"083a6a7028749e3ef5397011b695037d958d5535cc332f666a853f06649cc0e4","tests/fixtures/custom_executable_name/config/code_ownership.yml":"107fab4d8816bcf1d0f70663450db390b713bdaa45a16ffbc7095663d44b5ca1","tests/fixtures/custom_executable_name/config/teams/foo.yml":"e2ebda8a83ab460456238351c112fa34fd056603ab556ef86afb10565aaa4398","tests/fixtures/custom_executable_name/config/teams/payments.yml":"9a333c4b5ad8abb3cc0610fa5562e499dc5665bbdd25755ba39b13ebea08940b","tests/fixtures/custom_executable_name/ruby/app/payments/foo.rb":"e4e0884c8dbbb76a53fa1a1877925cef81724fc8618d73056857209820acd42f","tests/fixtures/default_executable_name/.github/CODEOWNERS":"3520d8681f4c8958ac29fecf5ce12d95bef7e5376f07b80cdca09611a092087e","tests/fixtures/default_executable_name/app/bar.rb":"522851f30712c0df9f444af429a0e2bbfb9d095c0af3b4bdb925eb80d088680e","tests/fixtures/default_executable_name/config/code_ownership.yml":"85c44e76a650b80a46eadc44bc4e6f184a8d405b63b2bf186726b2974e083a2f","tests/fixtures/default_executable_name/config/teams/bar.yml":"8a4369cf629089eec906495d05f3ef58ece3e17dd860e452cceec18bad1dfcef","tests/fixtures/invalid_project/.github/CODEOWNERS":"01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b","tests/fixtures/invalid_project/config/code_ownership.yml":"395b9023f51a29b8326a230c82543d8e8e7656376b4d82b1e77c7c5879620a30","tests/fixtures/invalid_project/config/teams/payments.yml":"205b0d200a5b686ad91c4080eadeefef200cc4974939b5ef02c15ef2edf775a1","tests/fixtures/invalid_project/config/teams/payroll.yml":"f3a85ce896837c2a9d38c2d23a600b1fd72f3bf8c4c65c12719ce942b3b17375","tests/fixtures/invalid_project/gems/payroll_calculator/calculator.rb":"350c85edfe24cd54b2479eda5266aae894b4c5eb6e9a3c0a0a1fb30e8c4d1d0f","tests/fixtures/invalid_project/ruby/app/models/bank_account.rb":"0832b2e95f90fa7ebd8dcbfd53c05618f091d38abf5dd238bd4d41645746160d","tests/fixtures/invalid_project/ruby/app/models/blockchain.rb":"9ffaa2304d02b8d40050017b62edbaf61b8600dc0b1a2c5b7f069b7c55c30616","tests/fixtures/invalid_project/ruby/app/models/payroll.rb":"7f48f8730fd738a2760ee81be8a6028cccb3c6c38be0433c7fd81a4bdd631b60","tests/fixtures/invalid_project/ruby/app/payments/nacha.rb":"c5ced2841986f3d48be0a132185a39dbc327715064574887303a25cf02aaad4d","tests/fixtures/invalid_project/ruby/app/services/.codeowner":"53fe8dfb6d9e1b03219adddcc3ffb741557dd579dc653d026097c463def4a8fe","tests/fixtures/invalid_project/ruby/app/services/multi_owned.rb":"42b340c67ad95016eb7e852abe37b39f7a0b5be41f897f972e05d2e581d6c30f","tests/fixtures/invalid_project/ruby/app/unowned.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/invalid_project/ruby/packages/payroll_flow/package.yml":"c1a08643821d02a57131870e8b6325f864db0687c5583f3d0872ada9d004072a","tests/fixtures/javascript_only_project/.github/CODEOWNERS":"fbd7770603296872c5993d1325a2d00a8d1704ad99002db9ab0dccc7182e3b37","tests/fixtures/javascript_only_project/.keep":"ff2dc9018b2c43a9793444552abcf83560daf5f7b1733bf7dbcaed4ee97db60e","tests/fixtures/javascript_only_project/config/code_ownership.yml":"b9cdde18cb0f0e8c025342c8d633197c401083f475ef34d7f9228ef343a0ba21","tests/fixtures/javascript_only_project/config/teams/design.yml":"6db44f08e2b0fb9e5bd91a83ba122025cf7e7a008703c39df9d0b10306a6e752","tests/fixtures/javascript_only_project/config/teams/frontend.yml":"f9fa6eee0ed9fc5a0b44485c306bb11785f9120a871c5e0bc074a5eacb808686","tests/fixtures/javascript_only_project/frontend/apps/public/index.tsx":"b3c88c0731b4b739d120f161266a501743a58577db571702dc6f3f0fd1483b4d","tests/fixtures/javascript_only_project/frontend/packages/dashboard/package.json":"3dd571d4d569608311ddab4a99cfe5596ab4c29fd0bade76ee9756cf28b0ac48","tests/fixtures/javascript_only_project/frontend/packages/dashboard/src/index.tsx":"5ef179897d55e9e8c6b70e5ad82803b11f0fcd5cfb3c7313e87b839798608e15","tests/fixtures/javascript_only_project/frontend/packages/ui-kit/.codeowner":"b5f4517c94406cb8d45702193f8282b62af30971d068e79d7bc2fd930cb0bb4c","tests/fixtures/javascript_only_project/frontend/packages/ui-kit/src/button.tsx":"7c18c050058f884a7f096b9fd4b1ccf853bc4e84dd786b5a92c5f0479b32f128","tests/fixtures/missing_github_team/.github/CODEOWNERS":"2a2f3c33c892b3ca170925e6f428d6bd506008f8343c67f640f55741ff22d611","tests/fixtures/missing_github_team/config/code_ownership.yml":"eb683ba7b42f810b457e1181626c6eb3b44bd5c80ba396bc0e8d29334a8187bf","tests/fixtures/missing_github_team/config/teams/bad_team.yml":"93cc7413631ce8fd5f95d083c9061f923de32e7c756bc6f0c9b17d593e4c4c12","tests/fixtures/missing_github_team/config/teams/good.yml":"bb8d9ea5106b9b87d17b3e72de7802f39f1879764fd99b13738cfdb43d503973","tests/fixtures/missing_github_team/gems/pets/dog.rb":"ed2553442d1646af1c421a7a04b92269612efbc5ec0ccb32930e27ceac65b2ea","tests/fixtures/multiple-directory-owners/.github/CODEOWNERS":"957d160c3d00eb530f7ebb34cc9b7c61934d108eb52ce3cb03b6d9978fad86df","tests/fixtures/multiple-directory-owners/app/consumers/.codeowner":"842c88863910f6eab22edcbdbe9f0f4dd96c6b46c711bd40277b36b8178943c4","tests/fixtures/multiple-directory-owners/app/consumers/deep/nesting/nestdir/deep_file.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/multiple-directory-owners/app/consumers/one_owner.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/multiple-directory-owners/app/services/.codeowner":"3eae1599bb7f187b86d6427942d172ba8dd7ee5962aab03e0839ad9d59c37eb0","tests/fixtures/multiple-directory-owners/app/services/exciting/.codeowner":"842c88863910f6eab22edcbdbe9f0f4dd96c6b46c711bd40277b36b8178943c4","tests/fixtures/multiple-directory-owners/app/services/exciting/some_other_file.rb":"c0cf1112663d326ba9b47fbcf961e98170c32e9287d5af574c35b3350fb3c59a","tests/fixtures/multiple-directory-owners/config/code_ownership.yml":"fcff2625d3a836924e75afd4a326c8f425a9ac4b4c5ffe276b8a14a083cc005a","tests/fixtures/multiple-directory-owners/config/teams/bar.yml":"253d9d9cb7f5b5cb81af19d8af7631b510d0f4ad59b32465c5e26bd78886f9c6","tests/fixtures/multiple-directory-owners/config/teams/foo.yml":"d4ba6d61c16e4227681f13013775e3d117e0cee4631714849405c47ff36ecbfc","tests/fixtures/valid_project/.github/CODEOWNERS":"ca6a9b2a225685b478fb7b542dd63ab945cd51ccd82b4d86495b3a3d7c020b6c","tests/fixtures/valid_project/.ignore":"68f30767f9c87c700952d52d9d39693e1a98efb6c07a0b9216fbc87d173ebb5e","tests/fixtures/valid_project/config/code_ownership.yml":"1443a689ff1b64d23cf6590b5d559ef386b549815f51bfe8a27ecd5f3111a5b8","tests/fixtures/valid_project/config/teams/payments.yml":"7c4edf4ab7db59c1ef13ef4e7aa498c8e8c23c19427ebebe4f43bca003619f2a","tests/fixtures/valid_project/config/teams/payroll.yml":"f3a85ce896837c2a9d38c2d23a600b1fd72f3bf8c4c65c12719ce942b3b17375","tests/fixtures/valid_project/config/teams/ux.yml":"918e96ab1b5c67c99b30b8e984c2cef8fa956b1c83802a76923b3f448bcdec62","tests/fixtures/valid_project/gems/payroll_calculator/calculator.rb":"991056cdd4824eea15055f9c055c22fb3281cc21cffbca94724b330b8a450e59","tests/fixtures/valid_project/gems/pets/dog.rb":"ed2553442d1646af1c421a7a04b92269612efbc5ec0ccb32930e27ceac65b2ea","tests/fixtures/valid_project/javascript/packages/PayrollFlow/index.tsx":"b78b223d3bdb83af6ef7f78bd305f6e18f11abf961ded3266f7bebdb9eb00686","tests/fixtures/valid_project/javascript/packages/PayrollFlow/package.json":"271a0bb50784a65df66fd5db7167d1dd67430c774c207eda58a96974dbafc408","tests/fixtures/valid_project/javascript/packages/items/(special)/.codeowner":"632e1c5839411a1009ef268e992c4b183cb1d5381b198eac0f8323213a61ed82","tests/fixtures/valid_project/javascript/packages/items/(special)/pay.ts":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project/javascript/packages/items/.codeowner":"53fe8dfb6d9e1b03219adddcc3ffb741557dd579dc653d026097c463def4a8fe","tests/fixtures/valid_project/javascript/packages/items/item.ts":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project/javascript/packages/list/page-admin.tsx":"4785eb6da46cfac5a74130f51a032d565824a0cfdde8f853530bd1e16baa8a95","tests/fixtures/valid_project/ruby/app/models/bank_account.rb":"0832b2e95f90fa7ebd8dcbfd53c05618f091d38abf5dd238bd4d41645746160d","tests/fixtures/valid_project/ruby/app/models/payroll.rb":"00214579a6b59629d74eb60e315b9e1cd77889ba54d46f0fa8e2936e7fbc4c53","tests/fixtures/valid_project/ruby/app/payments/foo/.codeowner":"53fe8dfb6d9e1b03219adddcc3ffb741557dd579dc653d026097c463def4a8fe","tests/fixtures/valid_project/ruby/app/payments/foo/ownedby_payroll.rb":"705296c5ae6b3c1efdb410c952095b6efba3f9edd0af1b42d20e6ba217b1744d","tests/fixtures/valid_project/ruby/app/payments/nacha.rb":"c5ced2841986f3d48be0a132185a39dbc327715064574887303a25cf02aaad4d","tests/fixtures/valid_project/ruby/app/payroll/.codeowner":"b58412ec67186588652c88a6c71fd7499e27984e1e587e137426bed8ddd53173","tests/fixtures/valid_project/ruby/app/payroll/payroll.rb":"ff6cb08457469043bd93b4fdbcecc37a29a506641ab486f9cafd319125ff00ca","tests/fixtures/valid_project/ruby/app/views/foos/edit.erb":"47a411fb8b793bf622fdb956f89a3b20835cd92201b61141f09748f8ff55ee21","tests/fixtures/valid_project/ruby/app/views/foos/index.html.erb":"4b7fd88053dfa83a4131200ed3196b41938e4a68119570e4aa1652ecdd7c6bfe","tests/fixtures/valid_project/ruby/app/views/foos/new.html.erb":"47a411fb8b793bf622fdb956f89a3b20835cd92201b61141f09748f8ff55ee21","tests/fixtures/valid_project/ruby/ignored_files/git_ignored.rb":"fb333306f05e93ff821123b1c09d264c5f37f1bd739156d91167789795704671","tests/fixtures/valid_project/ruby/packages/payroll_flow/package.yml":"c1a08643821d02a57131870e8b6325f864db0687c5583f3d0872ada9d004072a","tests/fixtures/valid_project/should_be_ignored/an_ignored_file.rb":"bd5ce0746f05ded73148e184b36741f3846e0af7409b42c16abae54a9220113a","tests/fixtures/valid_project_with_overrides/.github/CODEOWNERS":"99438c376b9ef057e5182f0197b42f7bb644773d181f1f94f3a7b2028052af34","tests/fixtures/valid_project_with_overrides/config/code_ownership.yml":"d4349ca21efdfd2a8247907db492e85aecea013f3977fabc5cc1a8a6411f7c3d","tests/fixtures/valid_project_with_overrides/config/teams/brewers.yml":"c45a00561fdaa703ed3a044a5c0271bd9d3e9fad64c3df58e17b07c38d151907","tests/fixtures/valid_project_with_overrides/config/teams/cubs.yml":"1bb8b70d29e97b2c78f35f84be18cafe2f3334bd81c45601217b1abdfcbdb088","tests/fixtures/valid_project_with_overrides/config/teams/giants.yml":"fdaead5b59332f408abc7e6a099f4773be232942532ae501aadc6d7f0110e302","tests/fixtures/valid_project_with_overrides/config/teams/rockies.yml":"0334aa2d3ba78261fb776f565ef38f1e19638e0fa5e05cae5785cec036ca7138","tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/package.json":"02e3dd340b4c1ab53bc2925164666b7c8c92cfb5afff7cdffcbb0760c0f23b56","tests/fixtures/valid_project_with_overrides/frontend/packages/components/datepicker/src/picks/dp.tsx":"7709ee4137249bf9d5c38687533304e7e04a174d233bc6f6e8a1f0de54689907","tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/package.json":"9b95dfa430e9167629e1d908ccbef8ed17e3818fcc04c10cd11aee1ba806f8d9","tests/fixtures/valid_project_with_overrides/frontend/packages/components/list/src/item.tsx":"8360b4a2d4b8705c5d070b0834e7f4d1e8fc3fdac4221dd5a1ac33a2b256d1bb","tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/package.json":"5676381fcd3acf9d7daa0f28eaf47b7fc481b7b826469655675ddd0bd4548429","tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/field.tsx":"6821d8fe047c903a1b4a897ed1bed9638e556098db653518c3700507236a9cdc","tests/fixtures/valid_project_with_overrides/frontend/packages/components/textfield/src/fields/small.tsx":"18d9323ac98ac4bd4a685193763e1f29426be5ac8c4d7e7975945d79644226fd","tests/fixtures/valid_project_with_overrides/gems/apollo/lib/apollo.rb":"0470c442f361f8df49268fc1ea6d84f9512598d43595d54d6bda896a13e144f5","tests/fixtures/valid_project_with_overrides/gems/ivy/lib/ivy.rb":"54f5443bef6aebcb63ab0501f418c8b03928514a8a7ac9ed41d35dfb619a24b1","tests/fixtures/valid_project_with_overrides/gems/lager/lib/lager.rb":"d90ceebb7bc6156b2e3b3a88274f6a330f6b33f1b7404a3d1561618d9ae261f3","tests/fixtures/valid_project_with_overrides/gems/summit/lib/summit.rb":"ef61bf61c1d574c562d8d2d7e6692e0bb0cdb3e02b49691d3558cb205a6b3d27","tests/fixtures/valid_project_with_overrides/packs/games/app/services/stats.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project_with_overrides/packs/games/package.yml":"d44cb7e67286294b43fc51e7eefd36fecb488bd7e3aa1c15ba5e2f0fd1364806","tests/fixtures/valid_project_with_overrides/packs/locations/app/services/capacity.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project_with_overrides/packs/locations/package.yml":"ae1e90f7aadaa78fed7c97083dd0f46b394e53b848c08cf370b59c0f8de25e1c","tests/fixtures/valid_project_with_overrides/packs/schedule/app/services/date.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project_with_overrides/packs/schedule/package.yml":"e97c4d452c4656b9e7b3c22093d5969c4a59a8c019a4fc7ef513c5748f6a9ede","tests/fixtures/valid_project_with_overrides/ruby/app/brewers/lib/util.rb":"92be44095fe84e95ea5ce3f5b42cc9681063646135c8163017a56d407a367005","tests/fixtures/valid_project_with_overrides/ruby/app/brewers/services/play.rb":"1c4d38afc6eed1eac4681fa774dfc1fbcad894b245616c88efcf7afff21e7762","tests/fixtures/valid_project_with_overrides/ruby/app/cubs/.codeowner":"870f5b1fed86d50ea4a808b13b307f172b5e39b9be296cff27ad9babbcd384e9","tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/.codeowner":"d706f1c0496146d6009e700d1e78c4f0f0927edf73c656ec59fccf40a72d4291","tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/db/price.rb":"b571b23154f35a482975537bb752975c7957d78b02163842e9afb52513e3b8ce","tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/models/entertainment.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project_with_overrides/ruby/app/cubs/services/play.rb":"e4b77f45119ecc9cead0a189f90295ff16e15a35c38763bd0942b5aa6aad83b2","tests/fixtures/valid_project_with_overrides/ruby/app/giants/services/play.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/fixtures/valid_project_with_overrides/ruby/app/rockies/services/play.rb":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","tests/git_stage_test.rs":"145b13404ccec67a420fbc59e8b137cd394e612b2bab1f76d7e175c29ef7d4ab","tests/invalid_project_structure_test.rs":"af048ddfa756bc2e187ea885ea533a4b67907c5bcc531a082ffceca0728649b4","tests/invalid_project_test.rs":"7dbb00616f95308c5b597f09faa8721c2df416d5dfc00b95a9698a5ee1c4919d","tests/missing_github_team_test.rs":"e279592be3a68bb348066f90543f9ec8e702d2876cd524a55acaaf86a579fea7","tests/multiple_directory_owners_test.rs":"8fec90a2c1bcdd8886987a33d9c4afcd0094ce102cfa3d0415bcc2b5354eae80","tests/run_config_executable_override_test.rs":"1ffac121827dc2065460ff0ae4243704084441bc6d642396bc5e9a1d01c5b401","tests/runner_api.rs":"aa8d909b760e43f30c7b3b9dff761c6dd917ea51feb5baeb33ed191475a0fc3f","tests/untracked_files_test.rs":"f4c1906b6591ae7f206f3ac0838c99a35c5fb81f650928ed929e6246549d9874","tests/valid_project_test.rs":"4c76f2770f80c6a6d720a2ee970c176f7a813a5f3af6d0086f866478248c9e11","tests/valid_project_with_overrides_test.rs":"77150218cc4e6d7527d910d89cc3303f8d02671e6686069a41e2484b4fa31f59","tests/validate_files_test.rs":"517eb0f41405f2b1b3a69487c2a4fe526736bbadacce57e0fa0b57e5fba381df","tmp/.gitkeep":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"package":null}
@@ -0,0 +1 @@
1
+ * @rubyatscale/ruby-at-scale
@@ -0,0 +1,38 @@
1
+ This file provides guidance to AI coding agents when working with code in this repository.
2
+
3
+ ## What this project is
4
+
5
+ `codeowners-rs` is a Rust implementation of a CODEOWNERS resolver. It parses CODEOWNERS files and determines ownership of files in a repository, used as both a library and CLI tool.
6
+
7
+ ## Commands
8
+
9
+ ```bash
10
+ # Build
11
+ cargo build
12
+ cargo build --release
13
+
14
+ # Run all tests
15
+ cargo test
16
+
17
+ # Run a single test by name
18
+ cargo test test_name
19
+
20
+ # Lint
21
+ cargo clippy --all-targets --all-features
22
+ cargo fmt --all -- --check # check only
23
+ cargo fmt --all # apply formatting
24
+
25
+ # Check compilation without building
26
+ cargo check
27
+ ```
28
+
29
+ ## Architecture
30
+
31
+ - `src/main.rs` — CLI entry point using `clap`
32
+ - `src/lib.rs` — library root; exposes the public API
33
+ - `src/ownership.rs` / `src/ownership/` — core ownership resolution logic: parses CODEOWNERS patterns and matches them against file paths
34
+ - `src/config.rs` — configuration loading
35
+ - `src/runner/` — orchestrates file walking and ownership resolution
36
+ - `src/cache/` — caching layer for resolved ownership results
37
+ - `src/cli.rs` — CLI command definitions
38
+ - Integration tests in `src/common_test.rs`; fixture data used in tests lives alongside test files
@@ -0,0 +1 @@
1
+ @AGENTS.md
@@ -179,7 +179,7 @@ checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675"
179
179
 
180
180
  [[package]]
181
181
  name = "codeowners"
182
- version = "0.3.0"
182
+ version = "0.3.2"
183
183
  dependencies = [
184
184
  "assert_cmd",
185
185
  "clap",
@@ -12,7 +12,7 @@
12
12
  [package]
13
13
  edition = "2024"
14
14
  name = "codeowners"
15
- version = "0.3.0"
15
+ version = "0.3.2"
16
16
  build = false
17
17
  autolib = false
18
18
  autobins = false
@@ -33,10 +33,18 @@ path = "src/main.rs"
33
33
  name = "cache_test"
34
34
  path = "tests/cache_test.rs"
35
35
 
36
+ [[test]]
37
+ name = "codeowners_path_test"
38
+ path = "tests/codeowners_path_test.rs"
39
+
36
40
  [[test]]
37
41
  name = "crosscheck_owners_test"
38
42
  path = "tests/crosscheck_owners_test.rs"
39
43
 
44
+ [[test]]
45
+ name = "executable_name_config_test"
46
+ path = "tests/executable_name_config_test.rs"
47
+
40
48
  [[test]]
41
49
  name = "git_stage_test"
42
50
  path = "tests/git_stage_test.rs"
@@ -49,10 +57,18 @@ path = "tests/invalid_project_structure_test.rs"
49
57
  name = "invalid_project_test"
50
58
  path = "tests/invalid_project_test.rs"
51
59
 
60
+ [[test]]
61
+ name = "missing_github_team_test"
62
+ path = "tests/missing_github_team_test.rs"
63
+
52
64
  [[test]]
53
65
  name = "multiple_directory_owners_test"
54
66
  path = "tests/multiple_directory_owners_test.rs"
55
67
 
68
+ [[test]]
69
+ name = "run_config_executable_override_test"
70
+ path = "tests/run_config_executable_override_test.rs"
71
+
56
72
  [[test]]
57
73
  name = "runner_api"
58
74
  path = "tests/runner_api.rs"
@@ -213,6 +213,15 @@ codeowners gv --no-cache
213
213
  - `vendored_gems_path` (default: `'vendored/'`)
214
214
  - `cache_directory` (default: `'tmp/cache/codeowners'`)
215
215
  - `ignore_dirs` (default includes: `.git`, `node_modules`, `tmp`, etc.)
216
+ - `executable_name` (default: `'codeowners'`): Customize the command name shown in validation error messages. Useful when using `codeowners-rs` via wrappers like the [code_ownership](https://github.com/rubyatscale/code_ownership) Ruby gem.
217
+
218
+ Example configuration with custom executable name:
219
+
220
+ ```yaml
221
+ owned_globs:
222
+ - '{app,components,config,frontend,lib,packs,spec}/**/*.{rb,rake,js,jsx,ts,tsx}'
223
+ executable_name: 'bin/codeownership' # For Ruby gem wrapper
224
+ ```
216
225
 
217
226
  See examples in `tests/fixtures/**/config/` for reference setups.
218
227
 
@@ -244,9 +253,10 @@ use codeowners::runner::{RunConfig, for_file, teams_for_files_from_codeowners};
244
253
  fn main() {
245
254
  let run_config = RunConfig {
246
255
  project_root: std::path::PathBuf::from("."),
247
- codeowners_file_path: std::path::PathBuf::from(".github/CODEOWNERS"),
256
+ codeowners_file_path: Some(std::path::PathBuf::from(".github/CODEOWNERS")), // optional, if None provided, will be resolved from config/env
248
257
  config_path: std::path::PathBuf::from("config/code_ownership.yml"),
249
258
  no_cache: true, // set false to enable on-disk caching
259
+ executable_name: None,
250
260
  };
251
261
 
252
262
  // Find owner for a single file using the optimized path (not just CODEOWNERS)
@@ -65,9 +65,9 @@ struct Args {
65
65
  #[command(subcommand)]
66
66
  command: Command,
67
67
 
68
- /// Path for the CODEOWNERS file.
69
- #[arg(long, default_value = "./.github/CODEOWNERS")]
70
- codeowners_file_path: PathBuf,
68
+ /// Path for the CODEOWNERS file (overrides codeowners_path from the config) [default: .github/CODEOWNERS]
69
+ #[arg(long)]
70
+ codeowners_file_path: Option<PathBuf>,
71
71
  /// Path for the configuration file
72
72
  #[arg(long, default_value = "./config/code_ownership.yml")]
73
73
  config_path: PathBuf,
@@ -93,8 +93,11 @@ impl Args {
93
93
  Ok(self.absolute_path(&self.config_path)?.clean())
94
94
  }
95
95
 
96
- fn absolute_codeowners_path(&self) -> Result<PathBuf, RunnerError> {
97
- Ok(self.absolute_path(&self.codeowners_file_path)?.clean())
96
+ fn absolute_codeowners_path(&self) -> Result<Option<PathBuf>, RunnerError> {
97
+ match &self.codeowners_file_path {
98
+ Some(path) => Ok(Some(self.absolute_path(path)?.clean())),
99
+ None => Ok(None),
100
+ }
98
101
  }
99
102
 
100
103
  fn absolute_path(&self, path: &Path) -> Result<PathBuf, RunnerError> {
@@ -114,6 +117,7 @@ pub fn cli() -> Result<RunResult, RunnerError> {
114
117
  codeowners_file_path,
115
118
  project_root,
116
119
  no_cache: args.no_cache,
120
+ executable_name: None,
117
121
  };
118
122
 
119
123
  let runner_result = match args.command {
@@ -25,6 +25,12 @@ pub struct Config {
25
25
 
26
26
  #[serde(default = "default_ignore_dirs")]
27
27
  pub ignore_dirs: Vec<String>,
28
+
29
+ #[serde(default = "default_executable_name")]
30
+ pub executable_name: String,
31
+
32
+ #[serde(default = "default_codeowners_path")]
33
+ pub codeowners_path: String,
28
34
  }
29
35
 
30
36
  #[allow(dead_code)]
@@ -61,9 +67,12 @@ fn vendored_gems_path() -> String {
61
67
  "vendored/".to_string()
62
68
  }
63
69
 
70
+ fn default_executable_name() -> String {
71
+ "codeowners generate".to_string()
72
+ }
73
+
64
74
  fn default_ignore_dirs() -> Vec<String> {
65
75
  vec![
66
- ".cursor".to_owned(),
67
76
  ".git".to_owned(),
68
77
  ".idea".to_owned(),
69
78
  ".vscode".to_owned(),
@@ -78,6 +87,10 @@ fn default_ignore_dirs() -> Vec<String> {
78
87
  ]
79
88
  }
80
89
 
90
+ fn default_codeowners_path() -> String {
91
+ ".github".to_string()
92
+ }
93
+
81
94
  impl Config {
82
95
  pub fn load_from_path(path: &Path) -> std::result::Result<Self, String> {
83
96
  let file = File::open(path).map_err(|e| format!("Can't open config file: {} ({})", path.to_string_lossy(), e))?;
@@ -121,6 +134,73 @@ mod tests {
121
134
  vec!["frontend/**/node_modules/**/*", "frontend/**/__generated__/**/*"]
122
135
  );
123
136
  assert_eq!(config.vendored_gems_path, "vendored/");
137
+ assert_eq!(config.executable_name, "codeowners generate");
138
+ Ok(())
139
+ }
140
+
141
+ #[test]
142
+ fn test_parse_config_with_custom_executable_name() -> Result<(), Box<dyn Error>> {
143
+ let temp_dir = tempdir()?;
144
+ let config_path = temp_dir.path().join("config.yml");
145
+ let config_str = indoc! {"
146
+ ---
147
+ owned_globs:
148
+ - \"**/*.rb\"
149
+ executable_name: my-custom-codeowners
150
+ "};
151
+ fs::write(&config_path, config_str)?;
152
+ let config_file = File::open(&config_path)?;
153
+ let config: Config = serde_yaml::from_reader(config_file)?;
154
+ assert_eq!(config.executable_name, "my-custom-codeowners");
155
+ Ok(())
156
+ }
157
+
158
+ #[test]
159
+ fn test_executable_name_defaults_when_not_specified() -> Result<(), Box<dyn Error>> {
160
+ let temp_dir = tempdir()?;
161
+ let config_path = temp_dir.path().join("config.yml");
162
+ let config_str = indoc! {"
163
+ ---
164
+ owned_globs:
165
+ - \"**/*.rb\"
166
+ "};
167
+ fs::write(&config_path, config_str)?;
168
+ let config_file = File::open(&config_path)?;
169
+ let config: Config = serde_yaml::from_reader(config_file)?;
170
+ assert_eq!(config.executable_name, "codeowners generate");
171
+ Ok(())
172
+ }
173
+
174
+ #[test]
175
+ fn test_codeowners_path_defaults_when_not_specified() -> Result<(), Box<dyn Error>> {
176
+ let temp_dir = tempdir()?;
177
+ let config_path = temp_dir.path().join("config.yml");
178
+ let config_str = indoc! {"
179
+ ---
180
+ owned_globs:
181
+ - \"**/*.rb\"
182
+ "};
183
+ fs::write(&config_path, config_str)?;
184
+ let config_file = File::open(&config_path)?;
185
+ let config: Config = serde_yaml::from_reader(config_file)?;
186
+ assert_eq!(config.codeowners_path, ".github");
187
+ Ok(())
188
+ }
189
+
190
+ #[test]
191
+ fn test_codeowners_path_can_be_customized() -> Result<(), Box<dyn Error>> {
192
+ let temp_dir = tempdir()?;
193
+ let config_path = temp_dir.path().join("config.yml");
194
+ let config_str = indoc! {"
195
+ ---
196
+ owned_globs:
197
+ - \"**/*.rb\"
198
+ codeowners_path: docs
199
+ "};
200
+ fs::write(&config_path, config_str)?;
201
+ let config_file = File::open(&config_path)?;
202
+ let config: Config = serde_yaml::from_reader(config_file)?;
203
+ assert_eq!(config.codeowners_path, "docs");
124
204
  Ok(())
125
205
  }
126
206
  }
@@ -6,7 +6,7 @@ use crate::{
6
6
  ownership::file_owner_resolver::find_file_owners,
7
7
  project::Project,
8
8
  project_builder::ProjectBuilder,
9
- runner::{RunConfig, RunResult, config_from_path, team_for_file_from_codeowners},
9
+ runner::{RunConfig, RunResult, config_from_run_config, team_for_file_from_codeowners},
10
10
  };
11
11
 
12
12
  pub fn crosscheck_owners(run_config: &RunConfig, cache: &Cache) -> RunResult {
@@ -43,16 +43,13 @@ fn do_crosscheck_owners(run_config: &RunConfig, cache: &Cache) -> Result<Vec<Str
43
43
  }
44
44
 
45
45
  fn load_config(run_config: &RunConfig) -> Result<Config, String> {
46
- config_from_path(&run_config.config_path).map_err(|e| e.to_string())
46
+ config_from_run_config(run_config).map_err(|e| e.to_string())
47
47
  }
48
48
 
49
49
  fn build_project(config: &Config, run_config: &RunConfig, cache: &Cache) -> Result<Project, String> {
50
- let mut project_builder = ProjectBuilder::new(
51
- config,
52
- run_config.project_root.clone(),
53
- run_config.codeowners_file_path.clone(),
54
- cache,
55
- );
50
+ use crate::runner::resolve_codeowners_file_path;
51
+ let codeowners_file_path = resolve_codeowners_file_path(run_config, config);
52
+ let mut project_builder = ProjectBuilder::new(config, run_config.project_root.clone(), codeowners_file_path, cache);
56
53
  project_builder.build().map_err(|e| e.to_string())
57
54
  }
58
55
 
@@ -71,10 +71,10 @@ fn teams_by_github_team_name(team_file_glob: Vec<String>) -> HashMap<String, Tea
71
71
  match glob::glob(&glob) {
72
72
  Ok(paths) => {
73
73
  for path in paths.filter_map(Result::ok) {
74
- let team = match Team::from_team_file_path(path) {
74
+ let team = match Team::from_team_file_path(path.clone()) {
75
75
  Ok(team) => team,
76
76
  Err(e) => {
77
- eprintln!("Error parsing team file: {}", e);
77
+ eprintln!("Error parsing team file: {e:?}, path: {}", path.display());
78
78
  continue;
79
79
  }
80
80
  };
@@ -95,7 +95,7 @@ fn build_codeowners_lines_in_priority(codeowners_file_path: String) -> Vec<Strin
95
95
  let codeowners_file = match fs::read_to_string(codeowners_file_path) {
96
96
  Ok(codeowners_file) => codeowners_file,
97
97
  Err(e) => {
98
- // we can't return the error because it's not clonable
98
+ // we can't return the error because it's not cloneable
99
99
  eprintln!("Error reading codeowners file: {}", e);
100
100
  return vec![];
101
101
  }
@@ -116,7 +116,7 @@ fn load_teams(project_root: &Path, team_file_globs: &[String]) -> std::result::R
116
116
  match Team::from_team_file_path(path.clone()) {
117
117
  Ok(team) => teams.push(team),
118
118
  Err(e) => {
119
- eprintln!("Error parsing team file: {}, path: {}", e, path.display());
119
+ eprintln!("Error parsing team file: {e:?}, path: {}", path.display());
120
120
  continue;
121
121
  }
122
122
  }
@@ -293,6 +293,8 @@ mod tests {
293
293
  vendored_gems_path: vendored_path.to_string(),
294
294
  cache_directory: "tmp/cache/codeowners".to_string(),
295
295
  ignore_dirs: vec![],
296
+ executable_name: "codeowners".to_string(),
297
+ codeowners_path: ".github".to_string(),
296
298
  }
297
299
  }
298
300
 
@@ -95,7 +95,7 @@ impl PackageMapper {
95
95
  let packages: Vec<&Package> = packages.iter().filter(|package| &package.package_type == package_type).collect();
96
96
 
97
97
  // Nested packs can create a duplicate ownership false positive.
98
- // We avoid it by treating nested packs as a single top level pack for the purpose of validations
98
+ // We avoid it by treating nested packs as a single top-level pack for the purposes of validation.
99
99
  let packages = remove_nested_packages(&packages);
100
100
 
101
101
  for package in packages {
@@ -147,7 +147,7 @@ mod tests {
147
147
  use std::{error::Error, path::Path};
148
148
  #[test]
149
149
  fn test_remove_nested_packages() {
150
- let packages = vec![
150
+ let packages = [
151
151
  Package {
152
152
  path: Path::new("packs/a/package.yml").to_owned(),
153
153
  package_type: PackageType::Ruby,
@@ -48,7 +48,7 @@ impl Display for Source {
48
48
  Source::TeamGem => write!(f, "Owner specified in Team YML's `owned_gems`"),
49
49
  Source::TeamGlob(glob) => write!(f, "Owner specified in Team YML as an owned_glob `{}`", glob),
50
50
  Source::Package(package_path, glob) => {
51
- write!(f, "Owner defined in `{}` with implicity owned glob: `{}`", package_path, glob)
51
+ write!(f, "Owner defined in `{}` with implicitly owned glob: `{}`", package_path, glob)
52
52
  }
53
53
  Source::TeamYml => write!(f, "Teams own their configuration files"),
54
54
  }
@@ -208,7 +208,7 @@ mod tests {
208
208
  );
209
209
  assert_eq!(
210
210
  Source::Package("packs/bam/packag.yml".to_string(), "packs/bam/**/**".to_string()).to_string(),
211
- "Owner defined in `packs/bam/packag.yml` with implicity owned glob: `packs/bam/**/**`"
211
+ "Owner defined in `packs/bam/packag.yml` with implicitly owned glob: `packs/bam/**/**`"
212
212
  );
213
213
  assert_eq!(Source::TeamYml.to_string(), "Teams own their configuration files");
214
214
  }